YES We show the termination of the TRS R: active(zeros()) -> mark(cons(|0|(),zeros())) active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) active(U106(tt())) -> mark(tt()) active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) active(U114(tt(),L)) -> mark(s(length(L))) active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) active(U122(tt())) -> mark(nil()) active(U13(tt())) -> mark(tt()) active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) active(U22(tt(),V1)) -> mark(U23(isNat(V1))) active(U23(tt())) -> mark(tt()) active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) active(U32(tt(),V)) -> mark(U33(isNatList(V))) active(U33(tt())) -> mark(tt()) active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) active(U46(tt())) -> mark(tt()) active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) active(U52(tt())) -> mark(tt()) active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) active(U62(tt())) -> mark(tt()) active(U71(tt())) -> mark(tt()) active(U81(tt())) -> mark(tt()) active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) active(U96(tt())) -> mark(tt()) active(isNat(|0|())) -> mark(tt()) active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) active(isNatIList(zeros())) -> mark(tt()) active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) active(isNatIListKind(nil())) -> mark(tt()) active(isNatIListKind(zeros())) -> mark(tt()) active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) active(isNatKind(|0|())) -> mark(tt()) active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) active(isNatList(nil())) -> mark(tt()) active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) active(length(nil())) -> mark(|0|()) active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) mark(zeros()) -> active(zeros()) mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) mark(|0|()) -> active(|0|()) mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) mark(tt()) -> active(tt()) mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) mark(isNatKind(X)) -> active(isNatKind(X)) mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) mark(isNatIListKind(X)) -> active(isNatIListKind(X)) mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) mark(isNat(X)) -> active(isNat(X)) mark(U106(X)) -> active(U106(mark(X))) mark(isNatIList(X)) -> active(isNatIList(X)) mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U13(X)) -> active(U13(mark(X))) mark(isNatList(X)) -> active(isNatList(X)) mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) mark(U122(X)) -> active(U122(mark(X))) mark(nil()) -> active(nil()) mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) mark(U23(X)) -> active(U23(mark(X))) mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) mark(U33(X)) -> active(U33(mark(X))) mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) mark(U46(X)) -> active(U46(mark(X))) mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) mark(U52(X)) -> active(U52(mark(X))) mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) mark(U62(X)) -> active(U62(mark(X))) mark(U71(X)) -> active(U71(mark(X))) mark(U81(X)) -> active(U81(mark(X))) mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) mark(U96(X)) -> active(U96(mark(X))) cons(mark(X1),X2) -> cons(X1,X2) cons(X1,mark(X2)) -> cons(X1,X2) cons(active(X1),X2) -> cons(X1,X2) cons(X1,active(X2)) -> cons(X1,X2) U101(mark(X1),X2,X3) -> U101(X1,X2,X3) U101(X1,mark(X2),X3) -> U101(X1,X2,X3) U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) U101(active(X1),X2,X3) -> U101(X1,X2,X3) U101(X1,active(X2),X3) -> U101(X1,X2,X3) U101(X1,X2,active(X3)) -> U101(X1,X2,X3) U102(mark(X1),X2,X3) -> U102(X1,X2,X3) U102(X1,mark(X2),X3) -> U102(X1,X2,X3) U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) U102(active(X1),X2,X3) -> U102(X1,X2,X3) U102(X1,active(X2),X3) -> U102(X1,X2,X3) U102(X1,X2,active(X3)) -> U102(X1,X2,X3) isNatKind(mark(X)) -> isNatKind(X) isNatKind(active(X)) -> isNatKind(X) U103(mark(X1),X2,X3) -> U103(X1,X2,X3) U103(X1,mark(X2),X3) -> U103(X1,X2,X3) U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) U103(active(X1),X2,X3) -> U103(X1,X2,X3) U103(X1,active(X2),X3) -> U103(X1,X2,X3) U103(X1,X2,active(X3)) -> U103(X1,X2,X3) isNatIListKind(mark(X)) -> isNatIListKind(X) isNatIListKind(active(X)) -> isNatIListKind(X) U104(mark(X1),X2,X3) -> U104(X1,X2,X3) U104(X1,mark(X2),X3) -> U104(X1,X2,X3) U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) U104(active(X1),X2,X3) -> U104(X1,X2,X3) U104(X1,active(X2),X3) -> U104(X1,X2,X3) U104(X1,X2,active(X3)) -> U104(X1,X2,X3) U105(mark(X1),X2) -> U105(X1,X2) U105(X1,mark(X2)) -> U105(X1,X2) U105(active(X1),X2) -> U105(X1,X2) U105(X1,active(X2)) -> U105(X1,X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) U106(mark(X)) -> U106(X) U106(active(X)) -> U106(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) U11(mark(X1),X2) -> U11(X1,X2) U11(X1,mark(X2)) -> U11(X1,X2) U11(active(X1),X2) -> U11(X1,X2) U11(X1,active(X2)) -> U11(X1,X2) U12(mark(X1),X2) -> U12(X1,X2) U12(X1,mark(X2)) -> U12(X1,X2) U12(active(X1),X2) -> U12(X1,X2) U12(X1,active(X2)) -> U12(X1,X2) U111(mark(X1),X2,X3) -> U111(X1,X2,X3) U111(X1,mark(X2),X3) -> U111(X1,X2,X3) U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) U111(active(X1),X2,X3) -> U111(X1,X2,X3) U111(X1,active(X2),X3) -> U111(X1,X2,X3) U111(X1,X2,active(X3)) -> U111(X1,X2,X3) U112(mark(X1),X2,X3) -> U112(X1,X2,X3) U112(X1,mark(X2),X3) -> U112(X1,X2,X3) U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) U112(active(X1),X2,X3) -> U112(X1,X2,X3) U112(X1,active(X2),X3) -> U112(X1,X2,X3) U112(X1,X2,active(X3)) -> U112(X1,X2,X3) U113(mark(X1),X2,X3) -> U113(X1,X2,X3) U113(X1,mark(X2),X3) -> U113(X1,X2,X3) U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) U113(active(X1),X2,X3) -> U113(X1,X2,X3) U113(X1,active(X2),X3) -> U113(X1,X2,X3) U113(X1,X2,active(X3)) -> U113(X1,X2,X3) U114(mark(X1),X2) -> U114(X1,X2) U114(X1,mark(X2)) -> U114(X1,X2) U114(active(X1),X2) -> U114(X1,X2) U114(X1,active(X2)) -> U114(X1,X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U13(mark(X)) -> U13(X) U13(active(X)) -> U13(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) U121(mark(X1),X2) -> U121(X1,X2) U121(X1,mark(X2)) -> U121(X1,X2) U121(active(X1),X2) -> U121(X1,X2) U121(X1,active(X2)) -> U121(X1,X2) U122(mark(X)) -> U122(X) U122(active(X)) -> U122(X) U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) take(mark(X1),X2) -> take(X1,X2) take(X1,mark(X2)) -> take(X1,X2) take(active(X1),X2) -> take(X1,X2) take(X1,active(X2)) -> take(X1,X2) U21(mark(X1),X2) -> U21(X1,X2) U21(X1,mark(X2)) -> U21(X1,X2) U21(active(X1),X2) -> U21(X1,X2) U21(X1,active(X2)) -> U21(X1,X2) U22(mark(X1),X2) -> U22(X1,X2) U22(X1,mark(X2)) -> U22(X1,X2) U22(active(X1),X2) -> U22(X1,X2) U22(X1,active(X2)) -> U22(X1,X2) U23(mark(X)) -> U23(X) U23(active(X)) -> U23(X) U31(mark(X1),X2) -> U31(X1,X2) U31(X1,mark(X2)) -> U31(X1,X2) U31(active(X1),X2) -> U31(X1,X2) U31(X1,active(X2)) -> U31(X1,X2) U32(mark(X1),X2) -> U32(X1,X2) U32(X1,mark(X2)) -> U32(X1,X2) U32(active(X1),X2) -> U32(X1,X2) U32(X1,active(X2)) -> U32(X1,X2) U33(mark(X)) -> U33(X) U33(active(X)) -> U33(X) U41(mark(X1),X2,X3) -> U41(X1,X2,X3) U41(X1,mark(X2),X3) -> U41(X1,X2,X3) U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) U41(active(X1),X2,X3) -> U41(X1,X2,X3) U41(X1,active(X2),X3) -> U41(X1,X2,X3) U41(X1,X2,active(X3)) -> U41(X1,X2,X3) U42(mark(X1),X2,X3) -> U42(X1,X2,X3) U42(X1,mark(X2),X3) -> U42(X1,X2,X3) U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) U42(active(X1),X2,X3) -> U42(X1,X2,X3) U42(X1,active(X2),X3) -> U42(X1,X2,X3) U42(X1,X2,active(X3)) -> U42(X1,X2,X3) U43(mark(X1),X2,X3) -> U43(X1,X2,X3) U43(X1,mark(X2),X3) -> U43(X1,X2,X3) U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) U43(active(X1),X2,X3) -> U43(X1,X2,X3) U43(X1,active(X2),X3) -> U43(X1,X2,X3) U43(X1,X2,active(X3)) -> U43(X1,X2,X3) U44(mark(X1),X2,X3) -> U44(X1,X2,X3) U44(X1,mark(X2),X3) -> U44(X1,X2,X3) U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) U44(active(X1),X2,X3) -> U44(X1,X2,X3) U44(X1,active(X2),X3) -> U44(X1,X2,X3) U44(X1,X2,active(X3)) -> U44(X1,X2,X3) U45(mark(X1),X2) -> U45(X1,X2) U45(X1,mark(X2)) -> U45(X1,X2) U45(active(X1),X2) -> U45(X1,X2) U45(X1,active(X2)) -> U45(X1,X2) U46(mark(X)) -> U46(X) U46(active(X)) -> U46(X) U51(mark(X1),X2) -> U51(X1,X2) U51(X1,mark(X2)) -> U51(X1,X2) U51(active(X1),X2) -> U51(X1,X2) U51(X1,active(X2)) -> U51(X1,X2) U52(mark(X)) -> U52(X) U52(active(X)) -> U52(X) U61(mark(X1),X2) -> U61(X1,X2) U61(X1,mark(X2)) -> U61(X1,X2) U61(active(X1),X2) -> U61(X1,X2) U61(X1,active(X2)) -> U61(X1,X2) U62(mark(X)) -> U62(X) U62(active(X)) -> U62(X) U71(mark(X)) -> U71(X) U71(active(X)) -> U71(X) U81(mark(X)) -> U81(X) U81(active(X)) -> U81(X) U91(mark(X1),X2,X3) -> U91(X1,X2,X3) U91(X1,mark(X2),X3) -> U91(X1,X2,X3) U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) U91(active(X1),X2,X3) -> U91(X1,X2,X3) U91(X1,active(X2),X3) -> U91(X1,X2,X3) U91(X1,X2,active(X3)) -> U91(X1,X2,X3) U92(mark(X1),X2,X3) -> U92(X1,X2,X3) U92(X1,mark(X2),X3) -> U92(X1,X2,X3) U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) U92(active(X1),X2,X3) -> U92(X1,X2,X3) U92(X1,active(X2),X3) -> U92(X1,X2,X3) U92(X1,X2,active(X3)) -> U92(X1,X2,X3) U93(mark(X1),X2,X3) -> U93(X1,X2,X3) U93(X1,mark(X2),X3) -> U93(X1,X2,X3) U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) U93(active(X1),X2,X3) -> U93(X1,X2,X3) U93(X1,active(X2),X3) -> U93(X1,X2,X3) U93(X1,X2,active(X3)) -> U93(X1,X2,X3) U94(mark(X1),X2,X3) -> U94(X1,X2,X3) U94(X1,mark(X2),X3) -> U94(X1,X2,X3) U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) U94(active(X1),X2,X3) -> U94(X1,X2,X3) U94(X1,active(X2),X3) -> U94(X1,X2,X3) U94(X1,X2,active(X3)) -> U94(X1,X2,X3) U95(mark(X1),X2) -> U95(X1,X2) U95(X1,mark(X2)) -> U95(X1,X2) U95(active(X1),X2) -> U95(X1,X2) U95(X1,active(X2)) -> U95(X1,X2) U96(mark(X)) -> U96(X) U96(active(X)) -> U96(X) -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: active#(zeros()) -> cons#(|0|(),zeros()) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: active#(U101(tt(),V1,V2)) -> U102#(isNatKind(V1),V1,V2) p5: active#(U101(tt(),V1,V2)) -> isNatKind#(V1) p6: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p7: active#(U102(tt(),V1,V2)) -> U103#(isNatIListKind(V2),V1,V2) p8: active#(U102(tt(),V1,V2)) -> isNatIListKind#(V2) p9: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p10: active#(U103(tt(),V1,V2)) -> U104#(isNatIListKind(V2),V1,V2) p11: active#(U103(tt(),V1,V2)) -> isNatIListKind#(V2) p12: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p13: active#(U104(tt(),V1,V2)) -> U105#(isNat(V1),V2) p14: active#(U104(tt(),V1,V2)) -> isNat#(V1) p15: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p16: active#(U105(tt(),V2)) -> U106#(isNatIList(V2)) p17: active#(U105(tt(),V2)) -> isNatIList#(V2) p18: active#(U106(tt())) -> mark#(tt()) p19: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p20: active#(U11(tt(),V1)) -> U12#(isNatIListKind(V1),V1) p21: active#(U11(tt(),V1)) -> isNatIListKind#(V1) p22: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p23: active#(U111(tt(),L,N)) -> U112#(isNatIListKind(L),L,N) p24: active#(U111(tt(),L,N)) -> isNatIListKind#(L) p25: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p26: active#(U112(tt(),L,N)) -> U113#(isNat(N),L,N) p27: active#(U112(tt(),L,N)) -> isNat#(N) p28: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p29: active#(U113(tt(),L,N)) -> U114#(isNatKind(N),L) p30: active#(U113(tt(),L,N)) -> isNatKind#(N) p31: active#(U114(tt(),L)) -> mark#(s(length(L))) p32: active#(U114(tt(),L)) -> s#(length(L)) p33: active#(U114(tt(),L)) -> length#(L) p34: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p35: active#(U12(tt(),V1)) -> U13#(isNatList(V1)) p36: active#(U12(tt(),V1)) -> isNatList#(V1) p37: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p38: active#(U121(tt(),IL)) -> U122#(isNatIListKind(IL)) p39: active#(U121(tt(),IL)) -> isNatIListKind#(IL) p40: active#(U122(tt())) -> mark#(nil()) p41: active#(U13(tt())) -> mark#(tt()) p42: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p43: active#(U131(tt(),IL,M,N)) -> U132#(isNatIListKind(IL),IL,M,N) p44: active#(U131(tt(),IL,M,N)) -> isNatIListKind#(IL) p45: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p46: active#(U132(tt(),IL,M,N)) -> U133#(isNat(M),IL,M,N) p47: active#(U132(tt(),IL,M,N)) -> isNat#(M) p48: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p49: active#(U133(tt(),IL,M,N)) -> U134#(isNatKind(M),IL,M,N) p50: active#(U133(tt(),IL,M,N)) -> isNatKind#(M) p51: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p52: active#(U134(tt(),IL,M,N)) -> U135#(isNat(N),IL,M,N) p53: active#(U134(tt(),IL,M,N)) -> isNat#(N) p54: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p55: active#(U135(tt(),IL,M,N)) -> U136#(isNatKind(N),IL,M,N) p56: active#(U135(tt(),IL,M,N)) -> isNatKind#(N) p57: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p58: active#(U136(tt(),IL,M,N)) -> cons#(N,take(M,IL)) p59: active#(U136(tt(),IL,M,N)) -> take#(M,IL) p60: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p61: active#(U21(tt(),V1)) -> U22#(isNatKind(V1),V1) p62: active#(U21(tt(),V1)) -> isNatKind#(V1) p63: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p64: active#(U22(tt(),V1)) -> U23#(isNat(V1)) p65: active#(U22(tt(),V1)) -> isNat#(V1) p66: active#(U23(tt())) -> mark#(tt()) p67: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p68: active#(U31(tt(),V)) -> U32#(isNatIListKind(V),V) p69: active#(U31(tt(),V)) -> isNatIListKind#(V) p70: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p71: active#(U32(tt(),V)) -> U33#(isNatList(V)) p72: active#(U32(tt(),V)) -> isNatList#(V) p73: active#(U33(tt())) -> mark#(tt()) p74: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p75: active#(U41(tt(),V1,V2)) -> U42#(isNatKind(V1),V1,V2) p76: active#(U41(tt(),V1,V2)) -> isNatKind#(V1) p77: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p78: active#(U42(tt(),V1,V2)) -> U43#(isNatIListKind(V2),V1,V2) p79: active#(U42(tt(),V1,V2)) -> isNatIListKind#(V2) p80: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p81: active#(U43(tt(),V1,V2)) -> U44#(isNatIListKind(V2),V1,V2) p82: active#(U43(tt(),V1,V2)) -> isNatIListKind#(V2) p83: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p84: active#(U44(tt(),V1,V2)) -> U45#(isNat(V1),V2) p85: active#(U44(tt(),V1,V2)) -> isNat#(V1) p86: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p87: active#(U45(tt(),V2)) -> U46#(isNatIList(V2)) p88: active#(U45(tt(),V2)) -> isNatIList#(V2) p89: active#(U46(tt())) -> mark#(tt()) p90: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p91: active#(U51(tt(),V2)) -> U52#(isNatIListKind(V2)) p92: active#(U51(tt(),V2)) -> isNatIListKind#(V2) p93: active#(U52(tt())) -> mark#(tt()) p94: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p95: active#(U61(tt(),V2)) -> U62#(isNatIListKind(V2)) p96: active#(U61(tt(),V2)) -> isNatIListKind#(V2) p97: active#(U62(tt())) -> mark#(tt()) p98: active#(U71(tt())) -> mark#(tt()) p99: active#(U81(tt())) -> mark#(tt()) p100: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p101: active#(U91(tt(),V1,V2)) -> U92#(isNatKind(V1),V1,V2) p102: active#(U91(tt(),V1,V2)) -> isNatKind#(V1) p103: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p104: active#(U92(tt(),V1,V2)) -> U93#(isNatIListKind(V2),V1,V2) p105: active#(U92(tt(),V1,V2)) -> isNatIListKind#(V2) p106: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p107: active#(U93(tt(),V1,V2)) -> U94#(isNatIListKind(V2),V1,V2) p108: active#(U93(tt(),V1,V2)) -> isNatIListKind#(V2) p109: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p110: active#(U94(tt(),V1,V2)) -> U95#(isNat(V1),V2) p111: active#(U94(tt(),V1,V2)) -> isNat#(V1) p112: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p113: active#(U95(tt(),V2)) -> U96#(isNatList(V2)) p114: active#(U95(tt(),V2)) -> isNatList#(V2) p115: active#(U96(tt())) -> mark#(tt()) p116: active#(isNat(|0|())) -> mark#(tt()) p117: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p118: active#(isNat(length(V1))) -> U11#(isNatIListKind(V1),V1) p119: active#(isNat(length(V1))) -> isNatIListKind#(V1) p120: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p121: active#(isNat(s(V1))) -> U21#(isNatKind(V1),V1) p122: active#(isNat(s(V1))) -> isNatKind#(V1) p123: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p124: active#(isNatIList(V)) -> U31#(isNatIListKind(V),V) p125: active#(isNatIList(V)) -> isNatIListKind#(V) p126: active#(isNatIList(zeros())) -> mark#(tt()) p127: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p128: active#(isNatIList(cons(V1,V2))) -> U41#(isNatKind(V1),V1,V2) p129: active#(isNatIList(cons(V1,V2))) -> isNatKind#(V1) p130: active#(isNatIListKind(nil())) -> mark#(tt()) p131: active#(isNatIListKind(zeros())) -> mark#(tt()) p132: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p133: active#(isNatIListKind(cons(V1,V2))) -> U51#(isNatKind(V1),V2) p134: active#(isNatIListKind(cons(V1,V2))) -> isNatKind#(V1) p135: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p136: active#(isNatIListKind(take(V1,V2))) -> U61#(isNatKind(V1),V2) p137: active#(isNatIListKind(take(V1,V2))) -> isNatKind#(V1) p138: active#(isNatKind(|0|())) -> mark#(tt()) p139: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p140: active#(isNatKind(length(V1))) -> U71#(isNatIListKind(V1)) p141: active#(isNatKind(length(V1))) -> isNatIListKind#(V1) p142: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p143: active#(isNatKind(s(V1))) -> U81#(isNatKind(V1)) p144: active#(isNatKind(s(V1))) -> isNatKind#(V1) p145: active#(isNatList(nil())) -> mark#(tt()) p146: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p147: active#(isNatList(cons(V1,V2))) -> U91#(isNatKind(V1),V1,V2) p148: active#(isNatList(cons(V1,V2))) -> isNatKind#(V1) p149: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p150: active#(isNatList(take(V1,V2))) -> U101#(isNatKind(V1),V1,V2) p151: active#(isNatList(take(V1,V2))) -> isNatKind#(V1) p152: active#(length(nil())) -> mark#(|0|()) p153: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p154: active#(length(cons(N,L))) -> U111#(isNatList(L),L,N) p155: active#(length(cons(N,L))) -> isNatList#(L) p156: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p157: active#(take(|0|(),IL)) -> U121#(isNatIList(IL),IL) p158: active#(take(|0|(),IL)) -> isNatIList#(IL) p159: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p160: active#(take(s(M),cons(N,IL))) -> U131#(isNatIList(IL),IL,M,N) p161: active#(take(s(M),cons(N,IL))) -> isNatIList#(IL) p162: mark#(zeros()) -> active#(zeros()) p163: mark#(cons(X1,X2)) -> active#(cons(mark(X1),X2)) p164: mark#(cons(X1,X2)) -> cons#(mark(X1),X2) p165: mark#(cons(X1,X2)) -> mark#(X1) p166: mark#(|0|()) -> active#(|0|()) p167: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p168: mark#(U101(X1,X2,X3)) -> U101#(mark(X1),X2,X3) p169: mark#(U101(X1,X2,X3)) -> mark#(X1) p170: mark#(tt()) -> active#(tt()) p171: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p172: mark#(U102(X1,X2,X3)) -> U102#(mark(X1),X2,X3) p173: mark#(U102(X1,X2,X3)) -> mark#(X1) p174: mark#(isNatKind(X)) -> active#(isNatKind(X)) p175: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p176: mark#(U103(X1,X2,X3)) -> U103#(mark(X1),X2,X3) p177: mark#(U103(X1,X2,X3)) -> mark#(X1) p178: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p179: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p180: mark#(U104(X1,X2,X3)) -> U104#(mark(X1),X2,X3) p181: mark#(U104(X1,X2,X3)) -> mark#(X1) p182: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p183: mark#(U105(X1,X2)) -> U105#(mark(X1),X2) p184: mark#(U105(X1,X2)) -> mark#(X1) p185: mark#(isNat(X)) -> active#(isNat(X)) p186: mark#(U106(X)) -> active#(U106(mark(X))) p187: mark#(U106(X)) -> U106#(mark(X)) p188: mark#(U106(X)) -> mark#(X) p189: mark#(isNatIList(X)) -> active#(isNatIList(X)) p190: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p191: mark#(U11(X1,X2)) -> U11#(mark(X1),X2) p192: mark#(U11(X1,X2)) -> mark#(X1) p193: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p194: mark#(U12(X1,X2)) -> U12#(mark(X1),X2) p195: mark#(U12(X1,X2)) -> mark#(X1) p196: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p197: mark#(U111(X1,X2,X3)) -> U111#(mark(X1),X2,X3) p198: mark#(U111(X1,X2,X3)) -> mark#(X1) p199: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p200: mark#(U112(X1,X2,X3)) -> U112#(mark(X1),X2,X3) p201: mark#(U112(X1,X2,X3)) -> mark#(X1) p202: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p203: mark#(U113(X1,X2,X3)) -> U113#(mark(X1),X2,X3) p204: mark#(U113(X1,X2,X3)) -> mark#(X1) p205: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p206: mark#(U114(X1,X2)) -> U114#(mark(X1),X2) p207: mark#(U114(X1,X2)) -> mark#(X1) p208: mark#(s(X)) -> active#(s(mark(X))) p209: mark#(s(X)) -> s#(mark(X)) p210: mark#(s(X)) -> mark#(X) p211: mark#(length(X)) -> active#(length(mark(X))) p212: mark#(length(X)) -> length#(mark(X)) p213: mark#(length(X)) -> mark#(X) p214: mark#(U13(X)) -> active#(U13(mark(X))) p215: mark#(U13(X)) -> U13#(mark(X)) p216: mark#(U13(X)) -> mark#(X) p217: mark#(isNatList(X)) -> active#(isNatList(X)) p218: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p219: mark#(U121(X1,X2)) -> U121#(mark(X1),X2) p220: mark#(U121(X1,X2)) -> mark#(X1) p221: mark#(U122(X)) -> active#(U122(mark(X))) p222: mark#(U122(X)) -> U122#(mark(X)) p223: mark#(U122(X)) -> mark#(X) p224: mark#(nil()) -> active#(nil()) p225: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p226: mark#(U131(X1,X2,X3,X4)) -> U131#(mark(X1),X2,X3,X4) p227: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p228: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p229: mark#(U132(X1,X2,X3,X4)) -> U132#(mark(X1),X2,X3,X4) p230: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p231: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p232: mark#(U133(X1,X2,X3,X4)) -> U133#(mark(X1),X2,X3,X4) p233: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p234: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p235: mark#(U134(X1,X2,X3,X4)) -> U134#(mark(X1),X2,X3,X4) p236: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p237: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p238: mark#(U135(X1,X2,X3,X4)) -> U135#(mark(X1),X2,X3,X4) p239: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p240: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p241: mark#(U136(X1,X2,X3,X4)) -> U136#(mark(X1),X2,X3,X4) p242: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p243: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p244: mark#(take(X1,X2)) -> take#(mark(X1),mark(X2)) p245: mark#(take(X1,X2)) -> mark#(X1) p246: mark#(take(X1,X2)) -> mark#(X2) p247: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p248: mark#(U21(X1,X2)) -> U21#(mark(X1),X2) p249: mark#(U21(X1,X2)) -> mark#(X1) p250: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p251: mark#(U22(X1,X2)) -> U22#(mark(X1),X2) p252: mark#(U22(X1,X2)) -> mark#(X1) p253: mark#(U23(X)) -> active#(U23(mark(X))) p254: mark#(U23(X)) -> U23#(mark(X)) p255: mark#(U23(X)) -> mark#(X) p256: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p257: mark#(U31(X1,X2)) -> U31#(mark(X1),X2) p258: mark#(U31(X1,X2)) -> mark#(X1) p259: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p260: mark#(U32(X1,X2)) -> U32#(mark(X1),X2) p261: mark#(U32(X1,X2)) -> mark#(X1) p262: mark#(U33(X)) -> active#(U33(mark(X))) p263: mark#(U33(X)) -> U33#(mark(X)) p264: mark#(U33(X)) -> mark#(X) p265: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p266: mark#(U41(X1,X2,X3)) -> U41#(mark(X1),X2,X3) p267: mark#(U41(X1,X2,X3)) -> mark#(X1) p268: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p269: mark#(U42(X1,X2,X3)) -> U42#(mark(X1),X2,X3) p270: mark#(U42(X1,X2,X3)) -> mark#(X1) p271: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p272: mark#(U43(X1,X2,X3)) -> U43#(mark(X1),X2,X3) p273: mark#(U43(X1,X2,X3)) -> mark#(X1) p274: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p275: mark#(U44(X1,X2,X3)) -> U44#(mark(X1),X2,X3) p276: mark#(U44(X1,X2,X3)) -> mark#(X1) p277: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p278: mark#(U45(X1,X2)) -> U45#(mark(X1),X2) p279: mark#(U45(X1,X2)) -> mark#(X1) p280: mark#(U46(X)) -> active#(U46(mark(X))) p281: mark#(U46(X)) -> U46#(mark(X)) p282: mark#(U46(X)) -> mark#(X) p283: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p284: mark#(U51(X1,X2)) -> U51#(mark(X1),X2) p285: mark#(U51(X1,X2)) -> mark#(X1) p286: mark#(U52(X)) -> active#(U52(mark(X))) p287: mark#(U52(X)) -> U52#(mark(X)) p288: mark#(U52(X)) -> mark#(X) p289: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p290: mark#(U61(X1,X2)) -> U61#(mark(X1),X2) p291: mark#(U61(X1,X2)) -> mark#(X1) p292: mark#(U62(X)) -> active#(U62(mark(X))) p293: mark#(U62(X)) -> U62#(mark(X)) p294: mark#(U62(X)) -> mark#(X) p295: mark#(U71(X)) -> active#(U71(mark(X))) p296: mark#(U71(X)) -> U71#(mark(X)) p297: mark#(U71(X)) -> mark#(X) p298: mark#(U81(X)) -> active#(U81(mark(X))) p299: mark#(U81(X)) -> U81#(mark(X)) p300: mark#(U81(X)) -> mark#(X) p301: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p302: mark#(U91(X1,X2,X3)) -> U91#(mark(X1),X2,X3) p303: mark#(U91(X1,X2,X3)) -> mark#(X1) p304: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p305: mark#(U92(X1,X2,X3)) -> U92#(mark(X1),X2,X3) p306: mark#(U92(X1,X2,X3)) -> mark#(X1) p307: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p308: mark#(U93(X1,X2,X3)) -> U93#(mark(X1),X2,X3) p309: mark#(U93(X1,X2,X3)) -> mark#(X1) p310: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p311: mark#(U94(X1,X2,X3)) -> U94#(mark(X1),X2,X3) p312: mark#(U94(X1,X2,X3)) -> mark#(X1) p313: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p314: mark#(U95(X1,X2)) -> U95#(mark(X1),X2) p315: mark#(U95(X1,X2)) -> mark#(X1) p316: mark#(U96(X)) -> active#(U96(mark(X))) p317: mark#(U96(X)) -> U96#(mark(X)) p318: mark#(U96(X)) -> mark#(X) p319: cons#(mark(X1),X2) -> cons#(X1,X2) p320: cons#(X1,mark(X2)) -> cons#(X1,X2) p321: cons#(active(X1),X2) -> cons#(X1,X2) p322: cons#(X1,active(X2)) -> cons#(X1,X2) p323: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p324: U101#(X1,mark(X2),X3) -> U101#(X1,X2,X3) p325: U101#(X1,X2,mark(X3)) -> U101#(X1,X2,X3) p326: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) p327: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) p328: U101#(X1,X2,active(X3)) -> U101#(X1,X2,X3) p329: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p330: U102#(X1,mark(X2),X3) -> U102#(X1,X2,X3) p331: U102#(X1,X2,mark(X3)) -> U102#(X1,X2,X3) p332: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) p333: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) p334: U102#(X1,X2,active(X3)) -> U102#(X1,X2,X3) p335: isNatKind#(mark(X)) -> isNatKind#(X) p336: isNatKind#(active(X)) -> isNatKind#(X) p337: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p338: U103#(X1,mark(X2),X3) -> U103#(X1,X2,X3) p339: U103#(X1,X2,mark(X3)) -> U103#(X1,X2,X3) p340: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) p341: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) p342: U103#(X1,X2,active(X3)) -> U103#(X1,X2,X3) p343: isNatIListKind#(mark(X)) -> isNatIListKind#(X) p344: isNatIListKind#(active(X)) -> isNatIListKind#(X) p345: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p346: U104#(X1,mark(X2),X3) -> U104#(X1,X2,X3) p347: U104#(X1,X2,mark(X3)) -> U104#(X1,X2,X3) p348: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) p349: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) p350: U104#(X1,X2,active(X3)) -> U104#(X1,X2,X3) p351: U105#(mark(X1),X2) -> U105#(X1,X2) p352: U105#(X1,mark(X2)) -> U105#(X1,X2) p353: U105#(active(X1),X2) -> U105#(X1,X2) p354: U105#(X1,active(X2)) -> U105#(X1,X2) p355: isNat#(mark(X)) -> isNat#(X) p356: isNat#(active(X)) -> isNat#(X) p357: U106#(mark(X)) -> U106#(X) p358: U106#(active(X)) -> U106#(X) p359: isNatIList#(mark(X)) -> isNatIList#(X) p360: isNatIList#(active(X)) -> isNatIList#(X) p361: U11#(mark(X1),X2) -> U11#(X1,X2) p362: U11#(X1,mark(X2)) -> U11#(X1,X2) p363: U11#(active(X1),X2) -> U11#(X1,X2) p364: U11#(X1,active(X2)) -> U11#(X1,X2) p365: U12#(mark(X1),X2) -> U12#(X1,X2) p366: U12#(X1,mark(X2)) -> U12#(X1,X2) p367: U12#(active(X1),X2) -> U12#(X1,X2) p368: U12#(X1,active(X2)) -> U12#(X1,X2) p369: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p370: U111#(X1,mark(X2),X3) -> U111#(X1,X2,X3) p371: U111#(X1,X2,mark(X3)) -> U111#(X1,X2,X3) p372: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) p373: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) p374: U111#(X1,X2,active(X3)) -> U111#(X1,X2,X3) p375: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p376: U112#(X1,mark(X2),X3) -> U112#(X1,X2,X3) p377: U112#(X1,X2,mark(X3)) -> U112#(X1,X2,X3) p378: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) p379: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) p380: U112#(X1,X2,active(X3)) -> U112#(X1,X2,X3) p381: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p382: U113#(X1,mark(X2),X3) -> U113#(X1,X2,X3) p383: U113#(X1,X2,mark(X3)) -> U113#(X1,X2,X3) p384: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) p385: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) p386: U113#(X1,X2,active(X3)) -> U113#(X1,X2,X3) p387: U114#(mark(X1),X2) -> U114#(X1,X2) p388: U114#(X1,mark(X2)) -> U114#(X1,X2) p389: U114#(active(X1),X2) -> U114#(X1,X2) p390: U114#(X1,active(X2)) -> U114#(X1,X2) p391: s#(mark(X)) -> s#(X) p392: s#(active(X)) -> s#(X) p393: length#(mark(X)) -> length#(X) p394: length#(active(X)) -> length#(X) p395: U13#(mark(X)) -> U13#(X) p396: U13#(active(X)) -> U13#(X) p397: isNatList#(mark(X)) -> isNatList#(X) p398: isNatList#(active(X)) -> isNatList#(X) p399: U121#(mark(X1),X2) -> U121#(X1,X2) p400: U121#(X1,mark(X2)) -> U121#(X1,X2) p401: U121#(active(X1),X2) -> U121#(X1,X2) p402: U121#(X1,active(X2)) -> U121#(X1,X2) p403: U122#(mark(X)) -> U122#(X) p404: U122#(active(X)) -> U122#(X) p405: U131#(mark(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p406: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p407: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p408: U131#(X1,X2,X3,mark(X4)) -> U131#(X1,X2,X3,X4) p409: U131#(active(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p410: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p411: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p412: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) p413: U132#(mark(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p414: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p415: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p416: U132#(X1,X2,X3,mark(X4)) -> U132#(X1,X2,X3,X4) p417: U132#(active(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p418: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p419: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p420: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) p421: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p422: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p423: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p424: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p425: U133#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p426: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p427: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p428: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) p429: U134#(mark(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p430: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p431: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p432: U134#(X1,X2,X3,mark(X4)) -> U134#(X1,X2,X3,X4) p433: U134#(active(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p434: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p435: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p436: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) p437: U135#(mark(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p438: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p439: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p440: U135#(X1,X2,X3,mark(X4)) -> U135#(X1,X2,X3,X4) p441: U135#(active(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p442: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p443: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p444: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) p445: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p446: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p447: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p448: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p449: U136#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p450: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p451: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p452: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) p453: take#(mark(X1),X2) -> take#(X1,X2) p454: take#(X1,mark(X2)) -> take#(X1,X2) p455: take#(active(X1),X2) -> take#(X1,X2) p456: take#(X1,active(X2)) -> take#(X1,X2) p457: U21#(mark(X1),X2) -> U21#(X1,X2) p458: U21#(X1,mark(X2)) -> U21#(X1,X2) p459: U21#(active(X1),X2) -> U21#(X1,X2) p460: U21#(X1,active(X2)) -> U21#(X1,X2) p461: U22#(mark(X1),X2) -> U22#(X1,X2) p462: U22#(X1,mark(X2)) -> U22#(X1,X2) p463: U22#(active(X1),X2) -> U22#(X1,X2) p464: U22#(X1,active(X2)) -> U22#(X1,X2) p465: U23#(mark(X)) -> U23#(X) p466: U23#(active(X)) -> U23#(X) p467: U31#(mark(X1),X2) -> U31#(X1,X2) p468: U31#(X1,mark(X2)) -> U31#(X1,X2) p469: U31#(active(X1),X2) -> U31#(X1,X2) p470: U31#(X1,active(X2)) -> U31#(X1,X2) p471: U32#(mark(X1),X2) -> U32#(X1,X2) p472: U32#(X1,mark(X2)) -> U32#(X1,X2) p473: U32#(active(X1),X2) -> U32#(X1,X2) p474: U32#(X1,active(X2)) -> U32#(X1,X2) p475: U33#(mark(X)) -> U33#(X) p476: U33#(active(X)) -> U33#(X) p477: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p478: U41#(X1,mark(X2),X3) -> U41#(X1,X2,X3) p479: U41#(X1,X2,mark(X3)) -> U41#(X1,X2,X3) p480: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) p481: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) p482: U41#(X1,X2,active(X3)) -> U41#(X1,X2,X3) p483: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p484: U42#(X1,mark(X2),X3) -> U42#(X1,X2,X3) p485: U42#(X1,X2,mark(X3)) -> U42#(X1,X2,X3) p486: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) p487: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) p488: U42#(X1,X2,active(X3)) -> U42#(X1,X2,X3) p489: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p490: U43#(X1,mark(X2),X3) -> U43#(X1,X2,X3) p491: U43#(X1,X2,mark(X3)) -> U43#(X1,X2,X3) p492: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) p493: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) p494: U43#(X1,X2,active(X3)) -> U43#(X1,X2,X3) p495: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p496: U44#(X1,mark(X2),X3) -> U44#(X1,X2,X3) p497: U44#(X1,X2,mark(X3)) -> U44#(X1,X2,X3) p498: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) p499: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) p500: U44#(X1,X2,active(X3)) -> U44#(X1,X2,X3) p501: U45#(mark(X1),X2) -> U45#(X1,X2) p502: U45#(X1,mark(X2)) -> U45#(X1,X2) p503: U45#(active(X1),X2) -> U45#(X1,X2) p504: U45#(X1,active(X2)) -> U45#(X1,X2) p505: U46#(mark(X)) -> U46#(X) p506: U46#(active(X)) -> U46#(X) p507: U51#(mark(X1),X2) -> U51#(X1,X2) p508: U51#(X1,mark(X2)) -> U51#(X1,X2) p509: U51#(active(X1),X2) -> U51#(X1,X2) p510: U51#(X1,active(X2)) -> U51#(X1,X2) p511: U52#(mark(X)) -> U52#(X) p512: U52#(active(X)) -> U52#(X) p513: U61#(mark(X1),X2) -> U61#(X1,X2) p514: U61#(X1,mark(X2)) -> U61#(X1,X2) p515: U61#(active(X1),X2) -> U61#(X1,X2) p516: U61#(X1,active(X2)) -> U61#(X1,X2) p517: U62#(mark(X)) -> U62#(X) p518: U62#(active(X)) -> U62#(X) p519: U71#(mark(X)) -> U71#(X) p520: U71#(active(X)) -> U71#(X) p521: U81#(mark(X)) -> U81#(X) p522: U81#(active(X)) -> U81#(X) p523: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p524: U91#(X1,mark(X2),X3) -> U91#(X1,X2,X3) p525: U91#(X1,X2,mark(X3)) -> U91#(X1,X2,X3) p526: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) p527: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) p528: U91#(X1,X2,active(X3)) -> U91#(X1,X2,X3) p529: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p530: U92#(X1,mark(X2),X3) -> U92#(X1,X2,X3) p531: U92#(X1,X2,mark(X3)) -> U92#(X1,X2,X3) p532: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) p533: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) p534: U92#(X1,X2,active(X3)) -> U92#(X1,X2,X3) p535: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p536: U93#(X1,mark(X2),X3) -> U93#(X1,X2,X3) p537: U93#(X1,X2,mark(X3)) -> U93#(X1,X2,X3) p538: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) p539: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) p540: U93#(X1,X2,active(X3)) -> U93#(X1,X2,X3) p541: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p542: U94#(X1,mark(X2),X3) -> U94#(X1,X2,X3) p543: U94#(X1,X2,mark(X3)) -> U94#(X1,X2,X3) p544: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) p545: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) p546: U94#(X1,X2,active(X3)) -> U94#(X1,X2,X3) p547: U95#(mark(X1),X2) -> U95#(X1,X2) p548: U95#(X1,mark(X2)) -> U95#(X1,X2) p549: U95#(active(X1),X2) -> U95#(X1,X2) p550: U95#(X1,active(X2)) -> U95#(X1,X2) p551: U96#(mark(X)) -> U96#(X) p552: U96#(active(X)) -> U96#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p3, p6, p9, p12, p15, p19, p22, p25, p28, p31, p34, p37, p42, p45, p48, p51, p54, p57, p60, p63, p67, p70, p74, p77, p80, p83, p86, p90, p94, p100, p103, p106, p109, p112, p117, p120, p123, p127, p132, p135, p139, p142, p146, p149, p153, p156, p159, p162, p163, p165, p167, p169, p171, p173, p174, p175, p177, p178, p179, p181, p182, p184, p185, p186, p188, p189, p190, p192, p193, p195, p196, p198, p199, p201, p202, p204, p205, p207, p208, p210, p211, p213, p214, p216, p217, p218, p220, p221, p223, p225, p227, p228, p230, p231, p233, p234, p236, p237, p239, p240, p242, p243, p245, p246, p247, p249, p250, p252, p253, p255, p256, p258, p259, p261, p262, p264, p265, p267, p268, p270, p271, p273, p274, p276, p277, p279, p280, p282, p283, p285, p286, p288, p289, p291, p292, p294, p295, p297, p298, p300, p301, p303, p304, p306, p307, p309, p310, p312, p313, p315, p316, p318} {p329, p330, p331, p332, p333, p334} {p335, p336} {p337, p338, p339, p340, p341, p342} {p343, p344} {p345, p346, p347, p348, p349, p350} {p351, p352, p353, p354} {p355, p356} {p357, p358} {p359, p360} {p365, p366, p367, p368} {p375, p376, p377, p378, p379, p380} {p381, p382, p383, p384, p385, p386} {p387, p388, p389, p390} {p391, p392} {p393, p394} {p395, p396} {p397, p398} {p403, p404} {p413, p414, p415, p416, p417, p418, p419, p420} {p421, p422, p423, p424, p425, p426, p427, p428} {p429, p430, p431, p432, p433, p434, p435, p436} {p437, p438, p439, p440, p441, p442, p443, p444} {p445, p446, p447, p448, p449, p450, p451, p452} {p319, p320, p321, p322} {p453, p454, p455, p456} {p461, p462, p463, p464} {p465, p466} {p471, p472, p473, p474} {p475, p476} {p483, p484, p485, p486, p487, p488} {p489, p490, p491, p492, p493, p494} {p495, p496, p497, p498, p499, p500} {p501, p502, p503, p504} {p505, p506} {p511, p512} {p517, p518} {p529, p530, p531, p532, p533, p534} {p535, p536, p537, p538, p539, p540} {p541, p542, p543, p544, p545, p546} {p547, p548, p549, p550} {p551, p552} {p361, p362, p363, p364} {p457, p458, p459, p460} {p467, p468, p469, p470} {p477, p478, p479, p480, p481, p482} {p507, p508, p509, p510} {p513, p514, p515, p516} {p519, p520} {p521, p522} {p523, p524, p525, p526, p527, p528} {p323, p324, p325, p326, p327, p328} {p369, p370, p371, p372, p373, p374} {p399, p400, p401, p402} {p405, p406, p407, p408, p409, p410, p411, p412} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(U96(X)) -> mark#(X) p4: mark#(U96(X)) -> active#(U96(mark(X))) p5: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p6: mark#(U95(X1,X2)) -> mark#(X1) p7: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p8: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p9: mark#(U94(X1,X2,X3)) -> mark#(X1) p10: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p11: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p12: mark#(U93(X1,X2,X3)) -> mark#(X1) p13: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p14: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p15: mark#(U92(X1,X2,X3)) -> mark#(X1) p16: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p17: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p18: mark#(U91(X1,X2,X3)) -> mark#(X1) p19: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p20: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p21: mark#(U81(X)) -> mark#(X) p22: mark#(U81(X)) -> active#(U81(mark(X))) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U71(X)) -> mark#(X) p25: mark#(U71(X)) -> active#(U71(mark(X))) p26: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p27: mark#(U62(X)) -> mark#(X) p28: mark#(U62(X)) -> active#(U62(mark(X))) p29: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p30: mark#(U61(X1,X2)) -> mark#(X1) p31: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p32: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p33: mark#(U52(X)) -> mark#(X) p34: mark#(U52(X)) -> active#(U52(mark(X))) p35: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p36: mark#(U51(X1,X2)) -> mark#(X1) p37: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p38: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p39: mark#(U46(X)) -> mark#(X) p40: mark#(U46(X)) -> active#(U46(mark(X))) p41: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p42: mark#(U45(X1,X2)) -> mark#(X1) p43: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p44: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p45: mark#(U44(X1,X2,X3)) -> mark#(X1) p46: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p47: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p48: mark#(U43(X1,X2,X3)) -> mark#(X1) p49: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p50: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p51: mark#(U42(X1,X2,X3)) -> mark#(X1) p52: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p53: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p54: mark#(U41(X1,X2,X3)) -> mark#(X1) p55: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p56: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p57: mark#(U33(X)) -> mark#(X) p58: mark#(U33(X)) -> active#(U33(mark(X))) p59: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p60: mark#(U32(X1,X2)) -> mark#(X1) p61: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p62: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p63: mark#(U31(X1,X2)) -> mark#(X1) p64: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p65: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p66: mark#(U23(X)) -> mark#(X) p67: mark#(U23(X)) -> active#(U23(mark(X))) p68: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p69: mark#(U22(X1,X2)) -> mark#(X1) p70: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p71: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p72: mark#(U21(X1,X2)) -> mark#(X1) p73: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p74: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p75: mark#(take(X1,X2)) -> mark#(X2) p76: mark#(take(X1,X2)) -> mark#(X1) p77: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p78: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p79: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p80: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p81: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p82: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p83: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p84: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p85: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p86: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p87: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p88: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p89: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p90: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p91: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p92: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p93: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p94: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p95: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p96: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p97: mark#(U122(X)) -> mark#(X) p98: mark#(U122(X)) -> active#(U122(mark(X))) p99: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p100: mark#(U121(X1,X2)) -> mark#(X1) p101: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p102: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p103: mark#(isNatList(X)) -> active#(isNatList(X)) p104: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p105: mark#(U13(X)) -> mark#(X) p106: mark#(U13(X)) -> active#(U13(mark(X))) p107: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p108: mark#(length(X)) -> mark#(X) p109: mark#(length(X)) -> active#(length(mark(X))) p110: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p111: mark#(s(X)) -> mark#(X) p112: mark#(s(X)) -> active#(s(mark(X))) p113: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p114: mark#(U114(X1,X2)) -> mark#(X1) p115: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p116: active#(U114(tt(),L)) -> mark#(s(length(L))) p117: mark#(U113(X1,X2,X3)) -> mark#(X1) p118: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p119: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p120: mark#(U112(X1,X2,X3)) -> mark#(X1) p121: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p122: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p123: mark#(U111(X1,X2,X3)) -> mark#(X1) p124: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p125: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p126: mark#(U12(X1,X2)) -> mark#(X1) p127: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p128: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p129: mark#(U11(X1,X2)) -> mark#(X1) p130: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p131: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p132: mark#(isNatIList(X)) -> active#(isNatIList(X)) p133: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p134: mark#(U106(X)) -> mark#(X) p135: mark#(U106(X)) -> active#(U106(mark(X))) p136: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p137: mark#(isNat(X)) -> active#(isNat(X)) p138: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p139: mark#(U105(X1,X2)) -> mark#(X1) p140: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p141: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p142: mark#(U104(X1,X2,X3)) -> mark#(X1) p143: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p144: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p145: mark#(U103(X1,X2,X3)) -> mark#(X1) p146: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p147: mark#(isNatKind(X)) -> active#(isNatKind(X)) p148: mark#(U102(X1,X2,X3)) -> mark#(X1) p149: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p150: mark#(U101(X1,X2,X3)) -> mark#(X1) p151: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p152: mark#(cons(X1,X2)) -> active#(cons(mark(X1),X2)) p153: mark#(zeros()) -> active#(zeros()) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: active#_A(x1) = max{0, x1 - 4} zeros_A = 89 mark#_A(x1) = 85 cons_A(x1,x2) = 76 |0|_A = 61 U96_A(x1) = 89 mark_A(x1) = max{34, x1 - 10} take_A(x1,x2) = 89 s_A(x1) = 89 U131_A(x1,x2,x3,x4) = 89 isNatIList_A(x1) = 89 U95_A(x1,x2) = 89 U121_A(x1,x2) = 89 U94_A(x1,x2,x3) = 89 length_A(x1) = 89 U111_A(x1,x2,x3) = 89 isNatList_A(x1) = 89 U93_A(x1,x2,x3) = 89 U101_A(x1,x2,x3) = 89 isNatKind_A(x1) = 89 U92_A(x1,x2,x3) = 89 U91_A(x1,x2,x3) = 89 U81_A(x1) = 89 U71_A(x1) = 89 isNatIListKind_A(x1) = 89 U61_A(x1,x2) = 89 U62_A(x1) = 89 U51_A(x1,x2) = 89 U41_A(x1,x2,x3) = 89 U52_A(x1) = 89 U31_A(x1,x2) = 89 isNat_A(x1) = 89 U21_A(x1,x2) = 89 U46_A(x1) = 89 U11_A(x1,x2) = 89 U45_A(x1,x2) = 89 tt_A = 46 U44_A(x1,x2,x3) = 89 U43_A(x1,x2,x3) = 89 U42_A(x1,x2,x3) = 89 U33_A(x1) = 89 U32_A(x1,x2) = 89 U23_A(x1) = 89 U22_A(x1,x2) = 89 U136_A(x1,x2,x3,x4) = 89 U135_A(x1,x2,x3,x4) = 89 U134_A(x1,x2,x3,x4) = 89 U133_A(x1,x2,x3,x4) = 89 U132_A(x1,x2,x3,x4) = 89 U122_A(x1) = 89 U13_A(x1) = 89 U12_A(x1,x2) = 89 U114_A(x1,x2) = 89 U113_A(x1,x2,x3) = 89 U112_A(x1,x2,x3) = 89 U105_A(x1,x2) = 89 U106_A(x1) = 89 U104_A(x1,x2,x3) = 89 U103_A(x1,x2,x3) = 89 U102_A(x1,x2,x3) = 89 active_A(x1) = max{35, x1 - 10} nil_A = 46 The next rules are strictly ordered: p152 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(U96(X)) -> mark#(X) p4: mark#(U96(X)) -> active#(U96(mark(X))) p5: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p6: mark#(U95(X1,X2)) -> mark#(X1) p7: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p8: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p9: mark#(U94(X1,X2,X3)) -> mark#(X1) p10: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p11: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p12: mark#(U93(X1,X2,X3)) -> mark#(X1) p13: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p14: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p15: mark#(U92(X1,X2,X3)) -> mark#(X1) p16: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p17: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p18: mark#(U91(X1,X2,X3)) -> mark#(X1) p19: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p20: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p21: mark#(U81(X)) -> mark#(X) p22: mark#(U81(X)) -> active#(U81(mark(X))) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U71(X)) -> mark#(X) p25: mark#(U71(X)) -> active#(U71(mark(X))) p26: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p27: mark#(U62(X)) -> mark#(X) p28: mark#(U62(X)) -> active#(U62(mark(X))) p29: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p30: mark#(U61(X1,X2)) -> mark#(X1) p31: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p32: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p33: mark#(U52(X)) -> mark#(X) p34: mark#(U52(X)) -> active#(U52(mark(X))) p35: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p36: mark#(U51(X1,X2)) -> mark#(X1) p37: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p38: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p39: mark#(U46(X)) -> mark#(X) p40: mark#(U46(X)) -> active#(U46(mark(X))) p41: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p42: mark#(U45(X1,X2)) -> mark#(X1) p43: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p44: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p45: mark#(U44(X1,X2,X3)) -> mark#(X1) p46: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p47: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p48: mark#(U43(X1,X2,X3)) -> mark#(X1) p49: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p50: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p51: mark#(U42(X1,X2,X3)) -> mark#(X1) p52: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p53: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p54: mark#(U41(X1,X2,X3)) -> mark#(X1) p55: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p56: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p57: mark#(U33(X)) -> mark#(X) p58: mark#(U33(X)) -> active#(U33(mark(X))) p59: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p60: mark#(U32(X1,X2)) -> mark#(X1) p61: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p62: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p63: mark#(U31(X1,X2)) -> mark#(X1) p64: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p65: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p66: mark#(U23(X)) -> mark#(X) p67: mark#(U23(X)) -> active#(U23(mark(X))) p68: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p69: mark#(U22(X1,X2)) -> mark#(X1) p70: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p71: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p72: mark#(U21(X1,X2)) -> mark#(X1) p73: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p74: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p75: mark#(take(X1,X2)) -> mark#(X2) p76: mark#(take(X1,X2)) -> mark#(X1) p77: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p78: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p79: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p80: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p81: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p82: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p83: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p84: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p85: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p86: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p87: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p88: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p89: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p90: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p91: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p92: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p93: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p94: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p95: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p96: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p97: mark#(U122(X)) -> mark#(X) p98: mark#(U122(X)) -> active#(U122(mark(X))) p99: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p100: mark#(U121(X1,X2)) -> mark#(X1) p101: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p102: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p103: mark#(isNatList(X)) -> active#(isNatList(X)) p104: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p105: mark#(U13(X)) -> mark#(X) p106: mark#(U13(X)) -> active#(U13(mark(X))) p107: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p108: mark#(length(X)) -> mark#(X) p109: mark#(length(X)) -> active#(length(mark(X))) p110: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p111: mark#(s(X)) -> mark#(X) p112: mark#(s(X)) -> active#(s(mark(X))) p113: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p114: mark#(U114(X1,X2)) -> mark#(X1) p115: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p116: active#(U114(tt(),L)) -> mark#(s(length(L))) p117: mark#(U113(X1,X2,X3)) -> mark#(X1) p118: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p119: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p120: mark#(U112(X1,X2,X3)) -> mark#(X1) p121: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p122: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p123: mark#(U111(X1,X2,X3)) -> mark#(X1) p124: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p125: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p126: mark#(U12(X1,X2)) -> mark#(X1) p127: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p128: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p129: mark#(U11(X1,X2)) -> mark#(X1) p130: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p131: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p132: mark#(isNatIList(X)) -> active#(isNatIList(X)) p133: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p134: mark#(U106(X)) -> mark#(X) p135: mark#(U106(X)) -> active#(U106(mark(X))) p136: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p137: mark#(isNat(X)) -> active#(isNat(X)) p138: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p139: mark#(U105(X1,X2)) -> mark#(X1) p140: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p141: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p142: mark#(U104(X1,X2,X3)) -> mark#(X1) p143: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p144: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p145: mark#(U103(X1,X2,X3)) -> mark#(X1) p146: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p147: mark#(isNatKind(X)) -> active#(isNatKind(X)) p148: mark#(U102(X1,X2,X3)) -> mark#(X1) p149: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p150: mark#(U101(X1,X2,X3)) -> mark#(X1) p151: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p152: mark#(zeros()) -> active#(zeros()) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125, p126, p127, p128, p129, p130, p131, p132, p133, p134, p135, p136, p137, p138, p139, p140, p141, p142, p143, p144, p145, p146, p147, p148, p149, p150, p151, p152} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(zeros()) -> active#(zeros()) p4: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p5: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p6: mark#(U101(X1,X2,X3)) -> mark#(X1) p7: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p8: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p9: mark#(U102(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatKind(X)) -> active#(isNatKind(X)) p11: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p12: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p13: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p14: mark#(U103(X1,X2,X3)) -> mark#(X1) p15: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p16: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p17: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p18: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p19: mark#(U104(X1,X2,X3)) -> mark#(X1) p20: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p21: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p22: mark#(U105(X1,X2)) -> mark#(X1) p23: mark#(isNat(X)) -> active#(isNat(X)) p24: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p25: mark#(U106(X)) -> active#(U106(mark(X))) p26: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p27: mark#(U106(X)) -> mark#(X) p28: mark#(isNatIList(X)) -> active#(isNatIList(X)) p29: active#(U114(tt(),L)) -> mark#(s(length(L))) p30: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p31: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p32: mark#(U11(X1,X2)) -> mark#(X1) p33: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p34: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p35: mark#(U12(X1,X2)) -> mark#(X1) p36: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p37: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p38: mark#(U111(X1,X2,X3)) -> mark#(X1) p39: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p40: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p41: mark#(U112(X1,X2,X3)) -> mark#(X1) p42: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p43: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p44: mark#(U113(X1,X2,X3)) -> mark#(X1) p45: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p46: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p47: mark#(U114(X1,X2)) -> mark#(X1) p48: mark#(s(X)) -> active#(s(mark(X))) p49: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p50: mark#(s(X)) -> mark#(X) p51: mark#(length(X)) -> active#(length(mark(X))) p52: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p53: mark#(length(X)) -> mark#(X) p54: mark#(U13(X)) -> active#(U13(mark(X))) p55: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p56: mark#(U13(X)) -> mark#(X) p57: mark#(isNatList(X)) -> active#(isNatList(X)) p58: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p59: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p60: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p61: mark#(U121(X1,X2)) -> mark#(X1) p62: mark#(U122(X)) -> active#(U122(mark(X))) p63: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p64: mark#(U122(X)) -> mark#(X) p65: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p66: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p67: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p68: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p69: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p70: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p71: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p72: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p73: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p74: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p75: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p76: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p77: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p78: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p79: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p80: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p81: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p82: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p83: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p84: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p85: mark#(take(X1,X2)) -> mark#(X1) p86: mark#(take(X1,X2)) -> mark#(X2) p87: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p88: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p89: mark#(U21(X1,X2)) -> mark#(X1) p90: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p91: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p92: mark#(U22(X1,X2)) -> mark#(X1) p93: mark#(U23(X)) -> active#(U23(mark(X))) p94: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p95: mark#(U23(X)) -> mark#(X) p96: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p97: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p98: mark#(U31(X1,X2)) -> mark#(X1) p99: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p100: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p101: mark#(U32(X1,X2)) -> mark#(X1) p102: mark#(U33(X)) -> active#(U33(mark(X))) p103: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p104: mark#(U33(X)) -> mark#(X) p105: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p106: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p107: mark#(U41(X1,X2,X3)) -> mark#(X1) p108: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p109: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p110: mark#(U42(X1,X2,X3)) -> mark#(X1) p111: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p112: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p113: mark#(U43(X1,X2,X3)) -> mark#(X1) p114: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p115: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p116: mark#(U44(X1,X2,X3)) -> mark#(X1) p117: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p118: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p119: mark#(U45(X1,X2)) -> mark#(X1) p120: mark#(U46(X)) -> active#(U46(mark(X))) p121: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p122: mark#(U46(X)) -> mark#(X) p123: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p124: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p125: mark#(U51(X1,X2)) -> mark#(X1) p126: mark#(U52(X)) -> active#(U52(mark(X))) p127: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p128: mark#(U52(X)) -> mark#(X) p129: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p130: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p131: mark#(U61(X1,X2)) -> mark#(X1) p132: mark#(U62(X)) -> active#(U62(mark(X))) p133: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p134: mark#(U62(X)) -> mark#(X) p135: mark#(U71(X)) -> active#(U71(mark(X))) p136: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p137: mark#(U71(X)) -> mark#(X) p138: mark#(U81(X)) -> active#(U81(mark(X))) p139: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p140: mark#(U81(X)) -> mark#(X) p141: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p142: mark#(U91(X1,X2,X3)) -> mark#(X1) p143: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p144: mark#(U92(X1,X2,X3)) -> mark#(X1) p145: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p146: mark#(U93(X1,X2,X3)) -> mark#(X1) p147: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p148: mark#(U94(X1,X2,X3)) -> mark#(X1) p149: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p150: mark#(U95(X1,X2)) -> mark#(X1) p151: mark#(U96(X)) -> active#(U96(mark(X))) p152: mark#(U96(X)) -> mark#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: active#_A(x1) = max{0, x1 - 364} zeros_A = 381 mark#_A(x1) = 17 cons_A(x1,x2) = 351 |0|_A = 341 U101_A(x1,x2,x3) = 381 mark_A(x1) = x1 + 426 tt_A = 10 U102_A(x1,x2,x3) = 381 isNatKind_A(x1) = 381 U103_A(x1,x2,x3) = 381 isNatIListKind_A(x1) = 381 U104_A(x1,x2,x3) = 381 U105_A(x1,x2) = 381 isNat_A(x1) = 381 U106_A(x1) = 380 isNatIList_A(x1) = 381 U11_A(x1,x2) = 381 U12_A(x1,x2) = 381 U111_A(x1,x2,x3) = 381 U112_A(x1,x2,x3) = 381 U113_A(x1,x2,x3) = 381 U114_A(x1,x2) = 381 s_A(x1) = 381 length_A(x1) = 381 U13_A(x1) = 333 isNatList_A(x1) = 381 U121_A(x1,x2) = 381 U122_A(x1) = 352 U131_A(x1,x2,x3,x4) = 381 U132_A(x1,x2,x3,x4) = 381 U133_A(x1,x2,x3,x4) = 381 U134_A(x1,x2,x3,x4) = 381 U135_A(x1,x2,x3,x4) = 381 U136_A(x1,x2,x3,x4) = 381 take_A(x1,x2) = 381 U21_A(x1,x2) = 381 U22_A(x1,x2) = 381 U23_A(x1) = 351 U31_A(x1,x2) = 381 U32_A(x1,x2) = 381 U33_A(x1) = 317 U41_A(x1,x2,x3) = 381 U42_A(x1,x2,x3) = 381 U43_A(x1,x2,x3) = 381 U44_A(x1,x2,x3) = 381 U45_A(x1,x2) = 381 U46_A(x1) = 381 U51_A(x1,x2) = 381 U52_A(x1) = 381 U61_A(x1,x2) = 381 U62_A(x1) = 381 U91_A(x1,x2,x3) = 381 U92_A(x1,x2,x3) = 381 U93_A(x1,x2,x3) = 381 U94_A(x1,x2,x3) = 381 U95_A(x1,x2) = 381 U96_A(x1) = 10 U71_A(x1) = 30 U81_A(x1) = 381 active_A(x1) = max{435, x1 + 426} nil_A = 10 The next rules are strictly ordered: p25, p54, p62, p93, p102, p135, p151 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(zeros()) -> active#(zeros()) p4: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p5: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p6: mark#(U101(X1,X2,X3)) -> mark#(X1) p7: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p8: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p9: mark#(U102(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatKind(X)) -> active#(isNatKind(X)) p11: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p12: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p13: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p14: mark#(U103(X1,X2,X3)) -> mark#(X1) p15: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p16: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p17: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p18: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p19: mark#(U104(X1,X2,X3)) -> mark#(X1) p20: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p21: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p22: mark#(U105(X1,X2)) -> mark#(X1) p23: mark#(isNat(X)) -> active#(isNat(X)) p24: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p25: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p26: mark#(U106(X)) -> mark#(X) p27: mark#(isNatIList(X)) -> active#(isNatIList(X)) p28: active#(U114(tt(),L)) -> mark#(s(length(L))) p29: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p30: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p31: mark#(U11(X1,X2)) -> mark#(X1) p32: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p33: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p34: mark#(U12(X1,X2)) -> mark#(X1) p35: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p36: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p37: mark#(U111(X1,X2,X3)) -> mark#(X1) p38: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p39: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p40: mark#(U112(X1,X2,X3)) -> mark#(X1) p41: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p42: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p43: mark#(U113(X1,X2,X3)) -> mark#(X1) p44: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p45: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p46: mark#(U114(X1,X2)) -> mark#(X1) p47: mark#(s(X)) -> active#(s(mark(X))) p48: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p49: mark#(s(X)) -> mark#(X) p50: mark#(length(X)) -> active#(length(mark(X))) p51: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p52: mark#(length(X)) -> mark#(X) p53: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p54: mark#(U13(X)) -> mark#(X) p55: mark#(isNatList(X)) -> active#(isNatList(X)) p56: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p57: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p58: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p59: mark#(U121(X1,X2)) -> mark#(X1) p60: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p61: mark#(U122(X)) -> mark#(X) p62: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p63: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p64: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p65: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p66: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p67: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p68: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p69: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p70: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p71: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p72: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p73: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p74: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p75: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p76: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p77: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p78: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p79: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p80: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p81: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p82: mark#(take(X1,X2)) -> mark#(X1) p83: mark#(take(X1,X2)) -> mark#(X2) p84: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p85: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p86: mark#(U21(X1,X2)) -> mark#(X1) p87: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p88: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p89: mark#(U22(X1,X2)) -> mark#(X1) p90: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p91: mark#(U23(X)) -> mark#(X) p92: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p93: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p94: mark#(U31(X1,X2)) -> mark#(X1) p95: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p96: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p97: mark#(U32(X1,X2)) -> mark#(X1) p98: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p99: mark#(U33(X)) -> mark#(X) p100: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p101: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p102: mark#(U41(X1,X2,X3)) -> mark#(X1) p103: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p104: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p105: mark#(U42(X1,X2,X3)) -> mark#(X1) p106: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p107: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p108: mark#(U43(X1,X2,X3)) -> mark#(X1) p109: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p110: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p111: mark#(U44(X1,X2,X3)) -> mark#(X1) p112: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p113: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p114: mark#(U45(X1,X2)) -> mark#(X1) p115: mark#(U46(X)) -> active#(U46(mark(X))) p116: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p117: mark#(U46(X)) -> mark#(X) p118: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p119: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p120: mark#(U51(X1,X2)) -> mark#(X1) p121: mark#(U52(X)) -> active#(U52(mark(X))) p122: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p123: mark#(U52(X)) -> mark#(X) p124: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p125: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p126: mark#(U61(X1,X2)) -> mark#(X1) p127: mark#(U62(X)) -> active#(U62(mark(X))) p128: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p129: mark#(U62(X)) -> mark#(X) p130: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p131: mark#(U71(X)) -> mark#(X) p132: mark#(U81(X)) -> active#(U81(mark(X))) p133: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p134: mark#(U81(X)) -> mark#(X) p135: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p136: mark#(U91(X1,X2,X3)) -> mark#(X1) p137: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p138: mark#(U92(X1,X2,X3)) -> mark#(X1) p139: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p140: mark#(U93(X1,X2,X3)) -> mark#(X1) p141: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p142: mark#(U94(X1,X2,X3)) -> mark#(X1) p143: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p144: mark#(U95(X1,X2)) -> mark#(X1) p145: mark#(U96(X)) -> mark#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125, p126, p127, p128, p129, p130, p131, p132, p133, p134, p135, p136, p137, p138, p139, p140, p141, p142, p143, p144, p145} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(U96(X)) -> mark#(X) p4: mark#(U95(X1,X2)) -> mark#(X1) p5: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p6: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p7: mark#(U94(X1,X2,X3)) -> mark#(X1) p8: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p9: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p10: mark#(U93(X1,X2,X3)) -> mark#(X1) p11: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p12: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p13: mark#(U92(X1,X2,X3)) -> mark#(X1) p14: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p15: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p16: mark#(U91(X1,X2,X3)) -> mark#(X1) p17: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p18: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p19: mark#(U81(X)) -> mark#(X) p20: mark#(U81(X)) -> active#(U81(mark(X))) p21: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p22: mark#(U71(X)) -> mark#(X) p23: mark#(U62(X)) -> mark#(X) p24: mark#(U62(X)) -> active#(U62(mark(X))) p25: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p26: mark#(U61(X1,X2)) -> mark#(X1) p27: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p28: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p29: mark#(U52(X)) -> mark#(X) p30: mark#(U52(X)) -> active#(U52(mark(X))) p31: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p32: mark#(U51(X1,X2)) -> mark#(X1) p33: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p34: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p35: mark#(U46(X)) -> mark#(X) p36: mark#(U46(X)) -> active#(U46(mark(X))) p37: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p38: mark#(U45(X1,X2)) -> mark#(X1) p39: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p40: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p41: mark#(U44(X1,X2,X3)) -> mark#(X1) p42: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p43: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p44: mark#(U43(X1,X2,X3)) -> mark#(X1) p45: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p46: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p47: mark#(U42(X1,X2,X3)) -> mark#(X1) p48: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p49: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p50: mark#(U41(X1,X2,X3)) -> mark#(X1) p51: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p52: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p53: mark#(U33(X)) -> mark#(X) p54: mark#(U32(X1,X2)) -> mark#(X1) p55: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p56: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p57: mark#(U31(X1,X2)) -> mark#(X1) p58: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p59: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p60: mark#(U23(X)) -> mark#(X) p61: mark#(U22(X1,X2)) -> mark#(X1) p62: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p63: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p64: mark#(U21(X1,X2)) -> mark#(X1) p65: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p66: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p67: mark#(take(X1,X2)) -> mark#(X2) p68: mark#(take(X1,X2)) -> mark#(X1) p69: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p70: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p71: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p72: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p73: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p74: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p75: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p76: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p77: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p78: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p79: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p80: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p81: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p82: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p83: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p84: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p85: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p86: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p87: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p88: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p89: mark#(U122(X)) -> mark#(X) p90: mark#(U121(X1,X2)) -> mark#(X1) p91: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p92: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p93: mark#(isNatList(X)) -> active#(isNatList(X)) p94: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p95: mark#(U13(X)) -> mark#(X) p96: mark#(length(X)) -> mark#(X) p97: mark#(length(X)) -> active#(length(mark(X))) p98: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p99: mark#(s(X)) -> mark#(X) p100: mark#(s(X)) -> active#(s(mark(X))) p101: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p102: mark#(U114(X1,X2)) -> mark#(X1) p103: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p104: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p105: mark#(U113(X1,X2,X3)) -> mark#(X1) p106: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p107: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p108: mark#(U112(X1,X2,X3)) -> mark#(X1) p109: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p110: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p111: mark#(U111(X1,X2,X3)) -> mark#(X1) p112: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p113: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p114: mark#(U12(X1,X2)) -> mark#(X1) p115: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p116: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p117: mark#(U11(X1,X2)) -> mark#(X1) p118: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p119: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p120: mark#(isNatIList(X)) -> active#(isNatIList(X)) p121: active#(U114(tt(),L)) -> mark#(s(length(L))) p122: mark#(U106(X)) -> mark#(X) p123: mark#(isNat(X)) -> active#(isNat(X)) p124: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p125: mark#(U105(X1,X2)) -> mark#(X1) p126: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p127: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p128: mark#(U104(X1,X2,X3)) -> mark#(X1) p129: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p130: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p131: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p132: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p133: mark#(U103(X1,X2,X3)) -> mark#(X1) p134: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p135: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p136: mark#(isNatKind(X)) -> active#(isNatKind(X)) p137: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p138: mark#(U102(X1,X2,X3)) -> mark#(X1) p139: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p140: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p141: mark#(U101(X1,X2,X3)) -> mark#(X1) p142: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p143: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p144: mark#(zeros()) -> active#(zeros()) p145: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: active#_A(x1) = x1 + 98 zeros_A = 214 mark#_A(x1) = 312 cons_A(x1,x2) = 213 |0|_A = 212 U96_A(x1) = 214 U95_A(x1,x2) = 214 mark_A(x1) = max{59, x1 - 1} take_A(x1,x2) = 214 s_A(x1) = 214 U131_A(x1,x2,x3,x4) = 214 isNatIList_A(x1) = 214 U94_A(x1,x2,x3) = 214 U121_A(x1,x2) = 214 U93_A(x1,x2,x3) = 214 length_A(x1) = 214 U111_A(x1,x2,x3) = 214 isNatList_A(x1) = 214 U92_A(x1,x2,x3) = 214 U101_A(x1,x2,x3) = 214 isNatKind_A(x1) = 214 U91_A(x1,x2,x3) = 214 U81_A(x1) = 214 U71_A(x1) = 212 U62_A(x1) = 214 isNatIListKind_A(x1) = 214 U61_A(x1,x2) = 214 U52_A(x1) = 213 U51_A(x1,x2) = 214 U41_A(x1,x2,x3) = 214 U46_A(x1) = 214 U31_A(x1,x2) = 214 U45_A(x1,x2) = 214 isNat_A(x1) = 214 U21_A(x1,x2) = 214 U44_A(x1,x2,x3) = 214 U11_A(x1,x2) = 214 U43_A(x1,x2,x3) = 214 tt_A = 63 U42_A(x1,x2,x3) = 214 U33_A(x1) = 214 U32_A(x1,x2) = 214 U23_A(x1) = 214 U22_A(x1,x2) = 214 U136_A(x1,x2,x3,x4) = 214 U135_A(x1,x2,x3,x4) = 214 U134_A(x1,x2,x3,x4) = 214 U133_A(x1,x2,x3,x4) = 214 U132_A(x1,x2,x3,x4) = 214 U122_A(x1) = 63 U13_A(x1) = 214 U114_A(x1,x2) = 214 U113_A(x1,x2,x3) = 214 U112_A(x1,x2,x3) = 214 U12_A(x1,x2) = 214 U106_A(x1) = 63 U105_A(x1,x2) = 214 U104_A(x1,x2,x3) = 214 U103_A(x1,x2,x3) = 214 U102_A(x1,x2,x3) = 214 active_A(x1) = max{61, x1 - 1} nil_A = 63 The next rules are strictly ordered: p30 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(U96(X)) -> mark#(X) p4: mark#(U95(X1,X2)) -> mark#(X1) p5: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p6: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p7: mark#(U94(X1,X2,X3)) -> mark#(X1) p8: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p9: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p10: mark#(U93(X1,X2,X3)) -> mark#(X1) p11: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p12: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p13: mark#(U92(X1,X2,X3)) -> mark#(X1) p14: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p15: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p16: mark#(U91(X1,X2,X3)) -> mark#(X1) p17: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p18: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p19: mark#(U81(X)) -> mark#(X) p20: mark#(U81(X)) -> active#(U81(mark(X))) p21: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p22: mark#(U71(X)) -> mark#(X) p23: mark#(U62(X)) -> mark#(X) p24: mark#(U62(X)) -> active#(U62(mark(X))) p25: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p26: mark#(U61(X1,X2)) -> mark#(X1) p27: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p28: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p29: mark#(U52(X)) -> mark#(X) p30: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p31: mark#(U51(X1,X2)) -> mark#(X1) p32: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p33: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p34: mark#(U46(X)) -> mark#(X) p35: mark#(U46(X)) -> active#(U46(mark(X))) p36: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p37: mark#(U45(X1,X2)) -> mark#(X1) p38: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p39: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p40: mark#(U44(X1,X2,X3)) -> mark#(X1) p41: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p42: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p43: mark#(U43(X1,X2,X3)) -> mark#(X1) p44: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p45: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p46: mark#(U42(X1,X2,X3)) -> mark#(X1) p47: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p48: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p49: mark#(U41(X1,X2,X3)) -> mark#(X1) p50: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p51: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p52: mark#(U33(X)) -> mark#(X) p53: mark#(U32(X1,X2)) -> mark#(X1) p54: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p55: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p56: mark#(U31(X1,X2)) -> mark#(X1) p57: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p58: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p59: mark#(U23(X)) -> mark#(X) p60: mark#(U22(X1,X2)) -> mark#(X1) p61: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p62: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p63: mark#(U21(X1,X2)) -> mark#(X1) p64: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p65: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p66: mark#(take(X1,X2)) -> mark#(X2) p67: mark#(take(X1,X2)) -> mark#(X1) p68: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p69: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p70: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p71: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p72: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p73: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p74: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p75: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p76: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p77: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p78: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p79: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p80: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p81: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p82: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p83: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p84: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p85: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p86: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p87: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p88: mark#(U122(X)) -> mark#(X) p89: mark#(U121(X1,X2)) -> mark#(X1) p90: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p91: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p92: mark#(isNatList(X)) -> active#(isNatList(X)) p93: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p94: mark#(U13(X)) -> mark#(X) p95: mark#(length(X)) -> mark#(X) p96: mark#(length(X)) -> active#(length(mark(X))) p97: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p98: mark#(s(X)) -> mark#(X) p99: mark#(s(X)) -> active#(s(mark(X))) p100: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p101: mark#(U114(X1,X2)) -> mark#(X1) p102: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p103: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p104: mark#(U113(X1,X2,X3)) -> mark#(X1) p105: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p106: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p107: mark#(U112(X1,X2,X3)) -> mark#(X1) p108: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p109: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p110: mark#(U111(X1,X2,X3)) -> mark#(X1) p111: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p112: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p113: mark#(U12(X1,X2)) -> mark#(X1) p114: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p115: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p116: mark#(U11(X1,X2)) -> mark#(X1) p117: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p118: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p119: mark#(isNatIList(X)) -> active#(isNatIList(X)) p120: active#(U114(tt(),L)) -> mark#(s(length(L))) p121: mark#(U106(X)) -> mark#(X) p122: mark#(isNat(X)) -> active#(isNat(X)) p123: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p124: mark#(U105(X1,X2)) -> mark#(X1) p125: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p126: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p127: mark#(U104(X1,X2,X3)) -> mark#(X1) p128: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p129: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p130: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p131: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p132: mark#(U103(X1,X2,X3)) -> mark#(X1) p133: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p134: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p135: mark#(isNatKind(X)) -> active#(isNatKind(X)) p136: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p137: mark#(U102(X1,X2,X3)) -> mark#(X1) p138: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p139: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p140: mark#(U101(X1,X2,X3)) -> mark#(X1) p141: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p142: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p143: mark#(zeros()) -> active#(zeros()) p144: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125, p126, p127, p128, p129, p130, p131, p132, p133, p134, p135, p136, p137, p138, p139, p140, p141, p142, p143, p144} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(zeros()) -> active#(zeros()) p4: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p5: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p6: mark#(U101(X1,X2,X3)) -> mark#(X1) p7: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p8: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p9: mark#(U102(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatKind(X)) -> active#(isNatKind(X)) p11: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p12: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p13: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p14: mark#(U103(X1,X2,X3)) -> mark#(X1) p15: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p16: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p17: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p18: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p19: mark#(U104(X1,X2,X3)) -> mark#(X1) p20: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p21: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p22: mark#(U105(X1,X2)) -> mark#(X1) p23: mark#(isNat(X)) -> active#(isNat(X)) p24: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p25: mark#(U106(X)) -> mark#(X) p26: mark#(isNatIList(X)) -> active#(isNatIList(X)) p27: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p28: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p29: active#(U114(tt(),L)) -> mark#(s(length(L))) p30: mark#(U11(X1,X2)) -> mark#(X1) p31: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p32: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p33: mark#(U12(X1,X2)) -> mark#(X1) p34: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p35: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p36: mark#(U111(X1,X2,X3)) -> mark#(X1) p37: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p38: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p39: mark#(U112(X1,X2,X3)) -> mark#(X1) p40: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p41: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p42: mark#(U113(X1,X2,X3)) -> mark#(X1) p43: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p44: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p45: mark#(U114(X1,X2)) -> mark#(X1) p46: mark#(s(X)) -> active#(s(mark(X))) p47: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p48: mark#(s(X)) -> mark#(X) p49: mark#(length(X)) -> active#(length(mark(X))) p50: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p51: mark#(length(X)) -> mark#(X) p52: mark#(U13(X)) -> mark#(X) p53: mark#(isNatList(X)) -> active#(isNatList(X)) p54: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p55: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p56: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p57: mark#(U121(X1,X2)) -> mark#(X1) p58: mark#(U122(X)) -> mark#(X) p59: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p60: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p61: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p62: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p63: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p64: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p65: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p66: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p67: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p68: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p69: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p70: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p71: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p72: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p73: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p74: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p75: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p76: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p77: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p78: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p79: mark#(take(X1,X2)) -> mark#(X1) p80: mark#(take(X1,X2)) -> mark#(X2) p81: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p82: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p83: mark#(U21(X1,X2)) -> mark#(X1) p84: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p85: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p86: mark#(U22(X1,X2)) -> mark#(X1) p87: mark#(U23(X)) -> mark#(X) p88: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p89: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p90: mark#(U31(X1,X2)) -> mark#(X1) p91: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p92: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p93: mark#(U32(X1,X2)) -> mark#(X1) p94: mark#(U33(X)) -> mark#(X) p95: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p96: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p97: mark#(U41(X1,X2,X3)) -> mark#(X1) p98: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p99: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p100: mark#(U42(X1,X2,X3)) -> mark#(X1) p101: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p102: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p103: mark#(U43(X1,X2,X3)) -> mark#(X1) p104: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p105: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p106: mark#(U44(X1,X2,X3)) -> mark#(X1) p107: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p108: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p109: mark#(U45(X1,X2)) -> mark#(X1) p110: mark#(U46(X)) -> active#(U46(mark(X))) p111: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p112: mark#(U46(X)) -> mark#(X) p113: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p114: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p115: mark#(U51(X1,X2)) -> mark#(X1) p116: mark#(U52(X)) -> mark#(X) p117: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p118: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p119: mark#(U61(X1,X2)) -> mark#(X1) p120: mark#(U62(X)) -> active#(U62(mark(X))) p121: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p122: mark#(U62(X)) -> mark#(X) p123: mark#(U71(X)) -> mark#(X) p124: mark#(U81(X)) -> active#(U81(mark(X))) p125: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p126: mark#(U81(X)) -> mark#(X) p127: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p128: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p129: mark#(U91(X1,X2,X3)) -> mark#(X1) p130: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p131: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p132: mark#(U92(X1,X2,X3)) -> mark#(X1) p133: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p134: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p135: mark#(U93(X1,X2,X3)) -> mark#(X1) p136: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p137: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p138: mark#(U94(X1,X2,X3)) -> mark#(X1) p139: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p140: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p141: mark#(U95(X1,X2)) -> mark#(X1) p142: mark#(U96(X)) -> mark#(X) p143: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p144: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: active#_A(x1) = x1 + 7 zeros_A = 383 mark#_A(x1) = 390 cons_A(x1,x2) = 255 |0|_A = 258 U101_A(x1,x2,x3) = 383 mark_A(x1) = max{227, x1 - 1} tt_A = 255 U102_A(x1,x2,x3) = 383 isNatKind_A(x1) = 383 U103_A(x1,x2,x3) = 383 isNatIListKind_A(x1) = 383 U104_A(x1,x2,x3) = 383 U105_A(x1,x2) = 383 isNat_A(x1) = 383 U106_A(x1) = 381 isNatIList_A(x1) = 383 U11_A(x1,x2) = 383 U12_A(x1,x2) = 383 U111_A(x1,x2,x3) = 383 U112_A(x1,x2,x3) = 383 U113_A(x1,x2,x3) = 383 U114_A(x1,x2) = 383 s_A(x1) = 383 length_A(x1) = 383 U13_A(x1) = 383 isNatList_A(x1) = 383 U121_A(x1,x2) = 383 U122_A(x1) = 383 U131_A(x1,x2,x3,x4) = 383 U132_A(x1,x2,x3,x4) = 383 U133_A(x1,x2,x3,x4) = 383 U134_A(x1,x2,x3,x4) = 383 U135_A(x1,x2,x3,x4) = 383 U136_A(x1,x2,x3,x4) = 383 take_A(x1,x2) = 383 U21_A(x1,x2) = 383 U22_A(x1,x2) = 383 U23_A(x1) = 359 U31_A(x1,x2) = 383 U32_A(x1,x2) = 383 U33_A(x1) = 383 U41_A(x1,x2,x3) = 383 U42_A(x1,x2,x3) = 383 U43_A(x1,x2,x3) = 383 U44_A(x1,x2,x3) = 383 U45_A(x1,x2) = 383 U46_A(x1) = 383 U51_A(x1,x2) = 383 U52_A(x1) = 383 U61_A(x1,x2) = 383 U62_A(x1) = 383 U91_A(x1,x2,x3) = 383 U92_A(x1,x2,x3) = 383 U93_A(x1,x2,x3) = 383 U94_A(x1,x2,x3) = 383 U95_A(x1,x2) = 383 U96_A(x1) = 383 U71_A(x1) = 383 U81_A(x1) = 382 active_A(x1) = max{253, x1 - 1} nil_A = 255 The next rules are strictly ordered: p124 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(zeros()) -> active#(zeros()) p4: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p5: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p6: mark#(U101(X1,X2,X3)) -> mark#(X1) p7: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p8: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p9: mark#(U102(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatKind(X)) -> active#(isNatKind(X)) p11: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p12: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p13: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p14: mark#(U103(X1,X2,X3)) -> mark#(X1) p15: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p16: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p17: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p18: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p19: mark#(U104(X1,X2,X3)) -> mark#(X1) p20: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p21: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p22: mark#(U105(X1,X2)) -> mark#(X1) p23: mark#(isNat(X)) -> active#(isNat(X)) p24: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p25: mark#(U106(X)) -> mark#(X) p26: mark#(isNatIList(X)) -> active#(isNatIList(X)) p27: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p28: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p29: active#(U114(tt(),L)) -> mark#(s(length(L))) p30: mark#(U11(X1,X2)) -> mark#(X1) p31: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p32: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p33: mark#(U12(X1,X2)) -> mark#(X1) p34: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p35: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p36: mark#(U111(X1,X2,X3)) -> mark#(X1) p37: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p38: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p39: mark#(U112(X1,X2,X3)) -> mark#(X1) p40: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p41: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p42: mark#(U113(X1,X2,X3)) -> mark#(X1) p43: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p44: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p45: mark#(U114(X1,X2)) -> mark#(X1) p46: mark#(s(X)) -> active#(s(mark(X))) p47: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p48: mark#(s(X)) -> mark#(X) p49: mark#(length(X)) -> active#(length(mark(X))) p50: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p51: mark#(length(X)) -> mark#(X) p52: mark#(U13(X)) -> mark#(X) p53: mark#(isNatList(X)) -> active#(isNatList(X)) p54: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p55: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p56: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p57: mark#(U121(X1,X2)) -> mark#(X1) p58: mark#(U122(X)) -> mark#(X) p59: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p60: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p61: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p62: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p63: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p64: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p65: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p66: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p67: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p68: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p69: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p70: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p71: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p72: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p73: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p74: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p75: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p76: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p77: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p78: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p79: mark#(take(X1,X2)) -> mark#(X1) p80: mark#(take(X1,X2)) -> mark#(X2) p81: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p82: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p83: mark#(U21(X1,X2)) -> mark#(X1) p84: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p85: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p86: mark#(U22(X1,X2)) -> mark#(X1) p87: mark#(U23(X)) -> mark#(X) p88: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p89: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p90: mark#(U31(X1,X2)) -> mark#(X1) p91: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p92: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p93: mark#(U32(X1,X2)) -> mark#(X1) p94: mark#(U33(X)) -> mark#(X) p95: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p96: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p97: mark#(U41(X1,X2,X3)) -> mark#(X1) p98: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p99: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p100: mark#(U42(X1,X2,X3)) -> mark#(X1) p101: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p102: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p103: mark#(U43(X1,X2,X3)) -> mark#(X1) p104: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p105: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p106: mark#(U44(X1,X2,X3)) -> mark#(X1) p107: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p108: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p109: mark#(U45(X1,X2)) -> mark#(X1) p110: mark#(U46(X)) -> active#(U46(mark(X))) p111: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p112: mark#(U46(X)) -> mark#(X) p113: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p114: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p115: mark#(U51(X1,X2)) -> mark#(X1) p116: mark#(U52(X)) -> mark#(X) p117: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p118: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p119: mark#(U61(X1,X2)) -> mark#(X1) p120: mark#(U62(X)) -> active#(U62(mark(X))) p121: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p122: mark#(U62(X)) -> mark#(X) p123: mark#(U71(X)) -> mark#(X) p124: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p125: mark#(U81(X)) -> mark#(X) p126: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p127: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p128: mark#(U91(X1,X2,X3)) -> mark#(X1) p129: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p130: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p131: mark#(U92(X1,X2,X3)) -> mark#(X1) p132: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p133: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p134: mark#(U93(X1,X2,X3)) -> mark#(X1) p135: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p136: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p137: mark#(U94(X1,X2,X3)) -> mark#(X1) p138: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p139: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p140: mark#(U95(X1,X2)) -> mark#(X1) p141: mark#(U96(X)) -> mark#(X) p142: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p143: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125, p126, p127, p128, p129, p130, p131, p132, p133, p134, p135, p136, p137, p138, p139, p140, p141, p142, p143} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(cons(X1,X2)) -> mark#(X1) p3: mark#(U96(X)) -> mark#(X) p4: mark#(U95(X1,X2)) -> mark#(X1) p5: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p6: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p7: mark#(U94(X1,X2,X3)) -> mark#(X1) p8: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p9: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p10: mark#(U93(X1,X2,X3)) -> mark#(X1) p11: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p12: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p13: mark#(U92(X1,X2,X3)) -> mark#(X1) p14: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p15: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p16: mark#(U91(X1,X2,X3)) -> mark#(X1) p17: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p18: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p19: mark#(U81(X)) -> mark#(X) p20: mark#(U71(X)) -> mark#(X) p21: mark#(U62(X)) -> mark#(X) p22: mark#(U62(X)) -> active#(U62(mark(X))) p23: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p24: mark#(U61(X1,X2)) -> mark#(X1) p25: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p26: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p27: mark#(U52(X)) -> mark#(X) p28: mark#(U51(X1,X2)) -> mark#(X1) p29: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p30: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p31: mark#(U46(X)) -> mark#(X) p32: mark#(U46(X)) -> active#(U46(mark(X))) p33: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p34: mark#(U45(X1,X2)) -> mark#(X1) p35: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p36: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p37: mark#(U44(X1,X2,X3)) -> mark#(X1) p38: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p39: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p40: mark#(U43(X1,X2,X3)) -> mark#(X1) p41: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p42: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p43: mark#(U42(X1,X2,X3)) -> mark#(X1) p44: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p45: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p46: mark#(U41(X1,X2,X3)) -> mark#(X1) p47: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p48: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p49: mark#(U33(X)) -> mark#(X) p50: mark#(U32(X1,X2)) -> mark#(X1) p51: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p52: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p53: mark#(U31(X1,X2)) -> mark#(X1) p54: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p55: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p56: mark#(U23(X)) -> mark#(X) p57: mark#(U22(X1,X2)) -> mark#(X1) p58: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p59: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p60: mark#(U21(X1,X2)) -> mark#(X1) p61: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p62: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p63: mark#(take(X1,X2)) -> mark#(X2) p64: mark#(take(X1,X2)) -> mark#(X1) p65: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p66: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p67: mark#(U136(X1,X2,X3,X4)) -> mark#(X1) p68: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p69: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p70: mark#(U135(X1,X2,X3,X4)) -> mark#(X1) p71: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p72: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p73: mark#(U134(X1,X2,X3,X4)) -> mark#(X1) p74: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p75: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p76: mark#(U133(X1,X2,X3,X4)) -> mark#(X1) p77: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p78: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p79: mark#(U132(X1,X2,X3,X4)) -> mark#(X1) p80: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p81: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p82: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p83: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p84: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p85: mark#(U122(X)) -> mark#(X) p86: mark#(U121(X1,X2)) -> mark#(X1) p87: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p88: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p89: mark#(isNatList(X)) -> active#(isNatList(X)) p90: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p91: mark#(U13(X)) -> mark#(X) p92: mark#(length(X)) -> mark#(X) p93: mark#(length(X)) -> active#(length(mark(X))) p94: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p95: mark#(s(X)) -> mark#(X) p96: mark#(s(X)) -> active#(s(mark(X))) p97: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p98: mark#(U114(X1,X2)) -> mark#(X1) p99: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p100: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p101: mark#(U113(X1,X2,X3)) -> mark#(X1) p102: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p103: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p104: mark#(U112(X1,X2,X3)) -> mark#(X1) p105: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p106: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p107: mark#(U111(X1,X2,X3)) -> mark#(X1) p108: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p109: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p110: mark#(U12(X1,X2)) -> mark#(X1) p111: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p112: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p113: mark#(U11(X1,X2)) -> mark#(X1) p114: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p115: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p116: mark#(isNatIList(X)) -> active#(isNatIList(X)) p117: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p118: mark#(U106(X)) -> mark#(X) p119: mark#(isNat(X)) -> active#(isNat(X)) p120: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p121: mark#(U105(X1,X2)) -> mark#(X1) p122: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p123: active#(U114(tt(),L)) -> mark#(s(length(L))) p124: mark#(U104(X1,X2,X3)) -> mark#(X1) p125: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p126: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p127: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p128: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p129: mark#(U103(X1,X2,X3)) -> mark#(X1) p130: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p131: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p132: mark#(isNatKind(X)) -> active#(isNatKind(X)) p133: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p134: mark#(U102(X1,X2,X3)) -> mark#(X1) p135: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p136: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p137: mark#(U101(X1,X2,X3)) -> mark#(X1) p138: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p139: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p140: mark#(zeros()) -> active#(zeros()) p141: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p142: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p143: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: active#_A(x1) = max{0, x1 - 22} zeros_A = 96 mark#_A(x1) = max{0, x1 - 22} cons_A(x1,x2) = max{96, x1 + 79, x2} |0|_A = 2 U96_A(x1) = max{11, x1} U95_A(x1,x2) = max{12, x1} mark_A(x1) = max{17, x1} take_A(x1,x2) = max{98, x1 + 81, x2 + 63} s_A(x1) = max{29, x1} U131_A(x1,x2,x3,x4) = max{159, x1, x2 + 63, x3 + 81, x4 + 141} isNatIList_A(x1) = 1 U94_A(x1,x2,x3) = max{13, x1} U121_A(x1,x2) = max{82, x1 + 65, x2 + 63} U93_A(x1,x2,x3) = max{12, x1} length_A(x1) = max{78, x1} U111_A(x1,x2,x3) = max{x1 + 61, x2, x3 + 78} isNatList_A(x1) = 0 U92_A(x1,x2,x3) = max{11, x1} U101_A(x1,x2,x3) = max{7, x1} isNatKind_A(x1) = 3 U91_A(x1,x2,x3) = max{1, x1} U81_A(x1) = max{3, x1} U71_A(x1) = max{8, x1} U62_A(x1) = max{1, x1} U61_A(x1,x2) = max{4, x1} isNatIListKind_A(x1) = 4 U52_A(x1) = max{4, x1} U51_A(x1,x2) = max{5, x1} U46_A(x1) = max{10, x1} U45_A(x1,x2) = max{9, x1} U41_A(x1,x2,x3) = max{2, x1} U44_A(x1,x2,x3) = max{8, x1} U31_A(x1,x2) = max{5, x1} U43_A(x1,x2,x3) = max{11, x1} isNat_A(x1) = 14 U21_A(x1,x2) = max{17, x1} U42_A(x1,x2,x3) = max{9, x1} U11_A(x1,x2) = max{5, x1} tt_A = 10 U33_A(x1) = max{17, x1} U32_A(x1,x2) = max{11, x1} U23_A(x1) = max{10, x1} U22_A(x1,x2) = max{10, x1} U136_A(x1,x2,x3,x4) = max{x1 + 89, x2 + 63, x3 + 81, x4 + 107} U135_A(x1,x2,x3,x4) = max{x1 + 98, x2 + 63, x3 + 81, x4 + 136} U134_A(x1,x2,x3,x4) = max{x1 + 118, x2 + 63, x3 + 81, x4 + 136} U133_A(x1,x2,x3,x4) = max{x1 + 112, x2 + 63, x3 + 81, x4 + 139} U132_A(x1,x2,x3,x4) = max{140, x1 + 121, x2 + 63, x3 + 81, x4 + 139} U122_A(x1) = max{82, x1} U13_A(x1) = max{17, x1} U114_A(x1,x2) = max{78, x1 + 20, x2} U113_A(x1,x2,x3) = max{x1 + 60, x2, x3 + 78} U112_A(x1,x2,x3) = max{x1 + 17, x2, x3 + 78} U12_A(x1,x2) = max{1, x1} U106_A(x1) = max{11, x1} U105_A(x1,x2) = max{16, x1} U104_A(x1,x2,x3) = max{15, x1} U103_A(x1,x2,x3) = max{9, x1} U102_A(x1,x2,x3) = max{8, x1} active_A(x1) = max{17, x1} nil_A = 18 The next rules are strictly ordered: p2, p63, p64, p67, p70, p73, p76, p79, p86, p98, p101, p104, p107 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(zeros()) -> mark#(cons(|0|(),zeros())) p2: mark#(U96(X)) -> mark#(X) p3: mark#(U95(X1,X2)) -> mark#(X1) p4: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p5: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p6: mark#(U94(X1,X2,X3)) -> mark#(X1) p7: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p8: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p9: mark#(U93(X1,X2,X3)) -> mark#(X1) p10: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p11: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p12: mark#(U92(X1,X2,X3)) -> mark#(X1) p13: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p14: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p15: mark#(U91(X1,X2,X3)) -> mark#(X1) p16: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p17: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p18: mark#(U81(X)) -> mark#(X) p19: mark#(U71(X)) -> mark#(X) p20: mark#(U62(X)) -> mark#(X) p21: mark#(U62(X)) -> active#(U62(mark(X))) p22: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p23: mark#(U61(X1,X2)) -> mark#(X1) p24: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p25: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p26: mark#(U52(X)) -> mark#(X) p27: mark#(U51(X1,X2)) -> mark#(X1) p28: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p29: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p30: mark#(U46(X)) -> mark#(X) p31: mark#(U46(X)) -> active#(U46(mark(X))) p32: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p33: mark#(U45(X1,X2)) -> mark#(X1) p34: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p35: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p36: mark#(U44(X1,X2,X3)) -> mark#(X1) p37: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p38: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p39: mark#(U43(X1,X2,X3)) -> mark#(X1) p40: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p41: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p42: mark#(U42(X1,X2,X3)) -> mark#(X1) p43: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p44: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p45: mark#(U41(X1,X2,X3)) -> mark#(X1) p46: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p47: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p48: mark#(U33(X)) -> mark#(X) p49: mark#(U32(X1,X2)) -> mark#(X1) p50: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p51: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p52: mark#(U31(X1,X2)) -> mark#(X1) p53: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p54: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p55: mark#(U23(X)) -> mark#(X) p56: mark#(U22(X1,X2)) -> mark#(X1) p57: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p58: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p59: mark#(U21(X1,X2)) -> mark#(X1) p60: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p61: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p62: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p63: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p64: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p65: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p66: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p67: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p68: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p69: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p70: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p71: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p72: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p73: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p74: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p75: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p76: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p77: mark#(U122(X)) -> mark#(X) p78: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p79: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p80: mark#(isNatList(X)) -> active#(isNatList(X)) p81: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p82: mark#(U13(X)) -> mark#(X) p83: mark#(length(X)) -> mark#(X) p84: mark#(length(X)) -> active#(length(mark(X))) p85: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p86: mark#(s(X)) -> mark#(X) p87: mark#(s(X)) -> active#(s(mark(X))) p88: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p89: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p90: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p91: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p92: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p93: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p94: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p95: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p96: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p97: mark#(U12(X1,X2)) -> mark#(X1) p98: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p99: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p100: mark#(U11(X1,X2)) -> mark#(X1) p101: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p102: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p103: mark#(isNatIList(X)) -> active#(isNatIList(X)) p104: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p105: mark#(U106(X)) -> mark#(X) p106: mark#(isNat(X)) -> active#(isNat(X)) p107: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p108: mark#(U105(X1,X2)) -> mark#(X1) p109: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p110: active#(U114(tt(),L)) -> mark#(s(length(L))) p111: mark#(U104(X1,X2,X3)) -> mark#(X1) p112: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p113: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p114: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p115: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p116: mark#(U103(X1,X2,X3)) -> mark#(X1) p117: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p118: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p119: mark#(isNatKind(X)) -> active#(isNatKind(X)) p120: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p121: mark#(U102(X1,X2,X3)) -> mark#(X1) p122: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p123: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p124: mark#(U101(X1,X2,X3)) -> mark#(X1) p125: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p126: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p127: mark#(zeros()) -> active#(zeros()) p128: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p129: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p130: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125, p126, p128, p129, p130} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U101(X1,X2,X3)) -> mark#(X1) p5: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p6: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p7: mark#(U102(X1,X2,X3)) -> mark#(X1) p8: mark#(isNatKind(X)) -> active#(isNatKind(X)) p9: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p10: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p11: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p12: mark#(U103(X1,X2,X3)) -> mark#(X1) p13: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p14: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p15: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p16: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p17: mark#(U104(X1,X2,X3)) -> mark#(X1) p18: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p19: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p20: mark#(U105(X1,X2)) -> mark#(X1) p21: mark#(isNat(X)) -> active#(isNat(X)) p22: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p23: mark#(U106(X)) -> mark#(X) p24: mark#(isNatIList(X)) -> active#(isNatIList(X)) p25: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p26: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p27: active#(U114(tt(),L)) -> mark#(s(length(L))) p28: mark#(U11(X1,X2)) -> mark#(X1) p29: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p30: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p31: mark#(U12(X1,X2)) -> mark#(X1) p32: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p33: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p34: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p35: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p36: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p37: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p38: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p39: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p40: mark#(s(X)) -> active#(s(mark(X))) p41: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p42: mark#(s(X)) -> mark#(X) p43: mark#(length(X)) -> active#(length(mark(X))) p44: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p45: mark#(length(X)) -> mark#(X) p46: mark#(U13(X)) -> mark#(X) p47: mark#(isNatList(X)) -> active#(isNatList(X)) p48: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p49: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p50: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p51: mark#(U122(X)) -> mark#(X) p52: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p53: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p54: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p55: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p56: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p57: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p58: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p59: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p60: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p61: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p62: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p63: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p64: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p65: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p66: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p67: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p68: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p69: mark#(U21(X1,X2)) -> mark#(X1) p70: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p71: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p72: mark#(U22(X1,X2)) -> mark#(X1) p73: mark#(U23(X)) -> mark#(X) p74: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p75: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p76: mark#(U31(X1,X2)) -> mark#(X1) p77: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p78: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p79: mark#(U32(X1,X2)) -> mark#(X1) p80: mark#(U33(X)) -> mark#(X) p81: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p82: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p83: mark#(U41(X1,X2,X3)) -> mark#(X1) p84: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p85: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p86: mark#(U42(X1,X2,X3)) -> mark#(X1) p87: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p88: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p89: mark#(U43(X1,X2,X3)) -> mark#(X1) p90: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p91: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p92: mark#(U44(X1,X2,X3)) -> mark#(X1) p93: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p94: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p95: mark#(U45(X1,X2)) -> mark#(X1) p96: mark#(U46(X)) -> active#(U46(mark(X))) p97: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p98: mark#(U46(X)) -> mark#(X) p99: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p100: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p101: mark#(U51(X1,X2)) -> mark#(X1) p102: mark#(U52(X)) -> mark#(X) p103: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p104: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p105: mark#(U61(X1,X2)) -> mark#(X1) p106: mark#(U62(X)) -> active#(U62(mark(X))) p107: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p108: mark#(U62(X)) -> mark#(X) p109: mark#(U71(X)) -> mark#(X) p110: mark#(U81(X)) -> mark#(X) p111: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p112: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p113: mark#(U91(X1,X2,X3)) -> mark#(X1) p114: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p115: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p116: mark#(U92(X1,X2,X3)) -> mark#(X1) p117: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p118: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p119: mark#(U93(X1,X2,X3)) -> mark#(X1) p120: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p121: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p122: mark#(U94(X1,X2,X3)) -> mark#(X1) p123: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p124: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p125: mark#(U95(X1,X2)) -> mark#(X1) p126: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p127: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p128: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = 795 U96_A(x1) = 275 U101_A(x1,x2,x3) = 359 active#_A(x1) = x1 + 436 mark_A(x1) = max{34, x1 - 1} tt_A = 128 U102_A(x1,x2,x3) = 359 isNatKind_A(x1) = 359 U103_A(x1,x2,x3) = 359 isNatIListKind_A(x1) = 359 U104_A(x1,x2,x3) = 359 U105_A(x1,x2) = 359 isNat_A(x1) = 359 U106_A(x1) = 359 isNatIList_A(x1) = 359 U11_A(x1,x2) = 359 U12_A(x1,x2) = 359 U111_A(x1,x2,x3) = 359 U112_A(x1,x2,x3) = 359 U113_A(x1,x2,x3) = 359 U114_A(x1,x2) = 359 s_A(x1) = 359 length_A(x1) = 359 U13_A(x1) = 359 isNatList_A(x1) = 359 U121_A(x1,x2) = 359 U122_A(x1) = 359 U131_A(x1,x2,x3,x4) = 359 U132_A(x1,x2,x3,x4) = 359 U133_A(x1,x2,x3,x4) = 359 U134_A(x1,x2,x3,x4) = 359 U135_A(x1,x2,x3,x4) = 359 U136_A(x1,x2,x3,x4) = 359 cons_A(x1,x2) = 69 take_A(x1,x2) = 359 U21_A(x1,x2) = 359 U22_A(x1,x2) = 359 U23_A(x1) = 359 U31_A(x1,x2) = 359 U32_A(x1,x2) = 359 U33_A(x1) = 359 U41_A(x1,x2,x3) = 359 U42_A(x1,x2,x3) = 359 U43_A(x1,x2,x3) = 359 U44_A(x1,x2,x3) = 359 U45_A(x1,x2) = 359 U46_A(x1) = 359 U51_A(x1,x2) = 359 U52_A(x1) = 359 U61_A(x1,x2) = 359 U62_A(x1) = 358 U91_A(x1,x2,x3) = 359 U92_A(x1,x2,x3) = 359 U93_A(x1,x2,x3) = 359 U94_A(x1,x2,x3) = 359 U95_A(x1,x2) = 359 U71_A(x1) = 128 U81_A(x1) = 128 |0|_A = 108 active_A(x1) = max{67, x1 - 1} zeros_A = 110 nil_A = 69 The next rules are strictly ordered: p106 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U101(X1,X2,X3)) -> mark#(X1) p5: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p6: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p7: mark#(U102(X1,X2,X3)) -> mark#(X1) p8: mark#(isNatKind(X)) -> active#(isNatKind(X)) p9: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p10: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p11: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p12: mark#(U103(X1,X2,X3)) -> mark#(X1) p13: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p14: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p15: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p16: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p17: mark#(U104(X1,X2,X3)) -> mark#(X1) p18: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p19: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p20: mark#(U105(X1,X2)) -> mark#(X1) p21: mark#(isNat(X)) -> active#(isNat(X)) p22: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p23: mark#(U106(X)) -> mark#(X) p24: mark#(isNatIList(X)) -> active#(isNatIList(X)) p25: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p26: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p27: active#(U114(tt(),L)) -> mark#(s(length(L))) p28: mark#(U11(X1,X2)) -> mark#(X1) p29: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p30: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p31: mark#(U12(X1,X2)) -> mark#(X1) p32: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p33: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p34: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p35: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p36: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p37: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p38: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p39: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p40: mark#(s(X)) -> active#(s(mark(X))) p41: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p42: mark#(s(X)) -> mark#(X) p43: mark#(length(X)) -> active#(length(mark(X))) p44: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p45: mark#(length(X)) -> mark#(X) p46: mark#(U13(X)) -> mark#(X) p47: mark#(isNatList(X)) -> active#(isNatList(X)) p48: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p49: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p50: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p51: mark#(U122(X)) -> mark#(X) p52: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p53: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p54: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p55: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p56: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p57: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p58: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p59: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p60: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p61: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p62: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p63: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p64: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p65: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p66: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p67: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p68: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p69: mark#(U21(X1,X2)) -> mark#(X1) p70: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p71: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p72: mark#(U22(X1,X2)) -> mark#(X1) p73: mark#(U23(X)) -> mark#(X) p74: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p75: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p76: mark#(U31(X1,X2)) -> mark#(X1) p77: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p78: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p79: mark#(U32(X1,X2)) -> mark#(X1) p80: mark#(U33(X)) -> mark#(X) p81: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p82: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p83: mark#(U41(X1,X2,X3)) -> mark#(X1) p84: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p85: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p86: mark#(U42(X1,X2,X3)) -> mark#(X1) p87: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p88: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p89: mark#(U43(X1,X2,X3)) -> mark#(X1) p90: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p91: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p92: mark#(U44(X1,X2,X3)) -> mark#(X1) p93: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p94: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p95: mark#(U45(X1,X2)) -> mark#(X1) p96: mark#(U46(X)) -> active#(U46(mark(X))) p97: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p98: mark#(U46(X)) -> mark#(X) p99: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p100: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p101: mark#(U51(X1,X2)) -> mark#(X1) p102: mark#(U52(X)) -> mark#(X) p103: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p104: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p105: mark#(U61(X1,X2)) -> mark#(X1) p106: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p107: mark#(U62(X)) -> mark#(X) p108: mark#(U71(X)) -> mark#(X) p109: mark#(U81(X)) -> mark#(X) p110: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p111: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p112: mark#(U91(X1,X2,X3)) -> mark#(X1) p113: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p114: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p115: mark#(U92(X1,X2,X3)) -> mark#(X1) p116: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p117: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p118: mark#(U93(X1,X2,X3)) -> mark#(X1) p119: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p120: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p121: mark#(U94(X1,X2,X3)) -> mark#(X1) p122: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p123: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p124: mark#(U95(X1,X2)) -> mark#(X1) p125: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p126: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p127: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125, p126, p127} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> mark#(X1) p6: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p7: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p8: mark#(U93(X1,X2,X3)) -> mark#(X1) p9: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p10: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p11: mark#(U92(X1,X2,X3)) -> mark#(X1) p12: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p13: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p14: mark#(U91(X1,X2,X3)) -> mark#(X1) p15: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p16: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p17: mark#(U81(X)) -> mark#(X) p18: mark#(U71(X)) -> mark#(X) p19: mark#(U62(X)) -> mark#(X) p20: mark#(U61(X1,X2)) -> mark#(X1) p21: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p22: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p23: mark#(U52(X)) -> mark#(X) p24: mark#(U51(X1,X2)) -> mark#(X1) p25: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p26: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p27: mark#(U46(X)) -> mark#(X) p28: mark#(U46(X)) -> active#(U46(mark(X))) p29: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p30: mark#(U45(X1,X2)) -> mark#(X1) p31: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p32: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p33: mark#(U44(X1,X2,X3)) -> mark#(X1) p34: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p35: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p36: mark#(U43(X1,X2,X3)) -> mark#(X1) p37: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p38: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p39: mark#(U42(X1,X2,X3)) -> mark#(X1) p40: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p41: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p42: mark#(U41(X1,X2,X3)) -> mark#(X1) p43: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p44: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p45: mark#(U33(X)) -> mark#(X) p46: mark#(U32(X1,X2)) -> mark#(X1) p47: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p48: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p49: mark#(U31(X1,X2)) -> mark#(X1) p50: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p51: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p52: mark#(U23(X)) -> mark#(X) p53: mark#(U22(X1,X2)) -> mark#(X1) p54: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p55: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p56: mark#(U21(X1,X2)) -> mark#(X1) p57: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p58: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p59: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p60: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p61: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p62: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p63: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p64: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p65: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p66: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p67: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p68: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p69: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p70: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p71: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p72: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p73: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p74: mark#(U122(X)) -> mark#(X) p75: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p76: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p77: mark#(isNatList(X)) -> active#(isNatList(X)) p78: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p79: mark#(U13(X)) -> mark#(X) p80: mark#(length(X)) -> mark#(X) p81: mark#(length(X)) -> active#(length(mark(X))) p82: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p83: mark#(s(X)) -> mark#(X) p84: mark#(s(X)) -> active#(s(mark(X))) p85: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p86: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p87: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p88: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p89: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p90: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p91: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p92: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p93: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p94: mark#(U12(X1,X2)) -> mark#(X1) p95: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p96: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p97: mark#(U11(X1,X2)) -> mark#(X1) p98: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p99: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p100: mark#(isNatIList(X)) -> active#(isNatIList(X)) p101: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p102: mark#(U106(X)) -> mark#(X) p103: mark#(isNat(X)) -> active#(isNat(X)) p104: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p105: mark#(U105(X1,X2)) -> mark#(X1) p106: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p107: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p108: mark#(U104(X1,X2,X3)) -> mark#(X1) p109: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p110: active#(U114(tt(),L)) -> mark#(s(length(L))) p111: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p112: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p113: mark#(U103(X1,X2,X3)) -> mark#(X1) p114: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p115: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p116: mark#(isNatKind(X)) -> active#(isNatKind(X)) p117: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p118: mark#(U102(X1,X2,X3)) -> mark#(X1) p119: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p120: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p121: mark#(U101(X1,X2,X3)) -> mark#(X1) p122: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p123: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p124: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p125: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p126: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p127: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = 125 U96_A(x1) = 83 U95_A(x1,x2) = 103 active#_A(x1) = x1 + 22 mark_A(x1) = max{68, x1 - 6} take_A(x1,x2) = 103 s_A(x1) = 42 cons_A(x1,x2) = 70 U131_A(x1,x2,x3,x4) = 103 isNatIList_A(x1) = 103 U94_A(x1,x2,x3) = 103 |0|_A = 75 U121_A(x1,x2) = 103 U93_A(x1,x2,x3) = 103 length_A(x1) = 103 U111_A(x1,x2,x3) = 103 isNatList_A(x1) = 103 U92_A(x1,x2,x3) = 103 U101_A(x1,x2,x3) = 103 isNatKind_A(x1) = 103 U91_A(x1,x2,x3) = 103 U81_A(x1) = 103 U71_A(x1) = 103 U62_A(x1) = 102 U61_A(x1,x2) = 103 U52_A(x1) = 102 U51_A(x1,x2) = 103 isNatIListKind_A(x1) = 103 U46_A(x1) = 103 U45_A(x1,x2) = 103 U44_A(x1,x2,x3) = 103 U41_A(x1,x2,x3) = 103 U43_A(x1,x2,x3) = 103 U31_A(x1,x2) = 103 U42_A(x1,x2,x3) = 103 isNat_A(x1) = 103 U21_A(x1,x2) = 103 U11_A(x1,x2) = 103 U33_A(x1) = 103 U32_A(x1,x2) = 103 tt_A = 75 U23_A(x1) = 103 U22_A(x1,x2) = 103 U136_A(x1,x2,x3,x4) = 103 U135_A(x1,x2,x3,x4) = 103 U134_A(x1,x2,x3,x4) = 103 U133_A(x1,x2,x3,x4) = 103 U132_A(x1,x2,x3,x4) = 103 U122_A(x1) = 103 U13_A(x1) = 76 U114_A(x1,x2) = 103 U113_A(x1,x2,x3) = 103 U112_A(x1,x2,x3) = 103 U12_A(x1,x2) = 103 U106_A(x1) = 76 U105_A(x1,x2) = 103 U104_A(x1,x2,x3) = 103 U103_A(x1,x2,x3) = 103 U102_A(x1,x2,x3) = 103 active_A(x1) = max{68, x1 - 6} zeros_A = 0 nil_A = 103 The next rules are strictly ordered: p84 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> mark#(X1) p6: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p7: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p8: mark#(U93(X1,X2,X3)) -> mark#(X1) p9: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p10: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p11: mark#(U92(X1,X2,X3)) -> mark#(X1) p12: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p13: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p14: mark#(U91(X1,X2,X3)) -> mark#(X1) p15: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p16: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p17: mark#(U81(X)) -> mark#(X) p18: mark#(U71(X)) -> mark#(X) p19: mark#(U62(X)) -> mark#(X) p20: mark#(U61(X1,X2)) -> mark#(X1) p21: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p22: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p23: mark#(U52(X)) -> mark#(X) p24: mark#(U51(X1,X2)) -> mark#(X1) p25: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p26: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p27: mark#(U46(X)) -> mark#(X) p28: mark#(U46(X)) -> active#(U46(mark(X))) p29: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p30: mark#(U45(X1,X2)) -> mark#(X1) p31: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p32: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p33: mark#(U44(X1,X2,X3)) -> mark#(X1) p34: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p35: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p36: mark#(U43(X1,X2,X3)) -> mark#(X1) p37: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p38: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p39: mark#(U42(X1,X2,X3)) -> mark#(X1) p40: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p41: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p42: mark#(U41(X1,X2,X3)) -> mark#(X1) p43: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p44: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p45: mark#(U33(X)) -> mark#(X) p46: mark#(U32(X1,X2)) -> mark#(X1) p47: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p48: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p49: mark#(U31(X1,X2)) -> mark#(X1) p50: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p51: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p52: mark#(U23(X)) -> mark#(X) p53: mark#(U22(X1,X2)) -> mark#(X1) p54: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p55: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p56: mark#(U21(X1,X2)) -> mark#(X1) p57: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p58: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p59: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p60: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p61: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p62: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p63: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p64: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p65: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p66: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p67: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p68: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p69: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p70: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p71: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p72: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p73: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p74: mark#(U122(X)) -> mark#(X) p75: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p76: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p77: mark#(isNatList(X)) -> active#(isNatList(X)) p78: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p79: mark#(U13(X)) -> mark#(X) p80: mark#(length(X)) -> mark#(X) p81: mark#(length(X)) -> active#(length(mark(X))) p82: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p83: mark#(s(X)) -> mark#(X) p84: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p85: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p86: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p87: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p88: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p89: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p90: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p91: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p92: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p93: mark#(U12(X1,X2)) -> mark#(X1) p94: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p95: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p96: mark#(U11(X1,X2)) -> mark#(X1) p97: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p98: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p99: mark#(isNatIList(X)) -> active#(isNatIList(X)) p100: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p101: mark#(U106(X)) -> mark#(X) p102: mark#(isNat(X)) -> active#(isNat(X)) p103: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p104: mark#(U105(X1,X2)) -> mark#(X1) p105: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p106: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p107: mark#(U104(X1,X2,X3)) -> mark#(X1) p108: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p109: active#(U114(tt(),L)) -> mark#(s(length(L))) p110: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p111: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p112: mark#(U103(X1,X2,X3)) -> mark#(X1) p113: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p114: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p115: mark#(isNatKind(X)) -> active#(isNatKind(X)) p116: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p117: mark#(U102(X1,X2,X3)) -> mark#(X1) p118: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p119: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p120: mark#(U101(X1,X2,X3)) -> mark#(X1) p121: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p122: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p123: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p124: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p125: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p126: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125, p126} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U101(X1,X2,X3)) -> mark#(X1) p5: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p6: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p7: mark#(U102(X1,X2,X3)) -> mark#(X1) p8: mark#(isNatKind(X)) -> active#(isNatKind(X)) p9: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p10: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p11: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p12: mark#(U103(X1,X2,X3)) -> mark#(X1) p13: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p14: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p15: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p16: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p17: mark#(U104(X1,X2,X3)) -> mark#(X1) p18: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p19: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p20: mark#(U105(X1,X2)) -> mark#(X1) p21: mark#(isNat(X)) -> active#(isNat(X)) p22: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p23: mark#(U106(X)) -> mark#(X) p24: mark#(isNatIList(X)) -> active#(isNatIList(X)) p25: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p26: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p27: active#(U114(tt(),L)) -> mark#(s(length(L))) p28: mark#(U11(X1,X2)) -> mark#(X1) p29: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p30: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p31: mark#(U12(X1,X2)) -> mark#(X1) p32: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p33: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p34: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p35: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p36: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p37: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p38: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p39: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p40: mark#(s(X)) -> mark#(X) p41: mark#(length(X)) -> active#(length(mark(X))) p42: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p43: mark#(length(X)) -> mark#(X) p44: mark#(U13(X)) -> mark#(X) p45: mark#(isNatList(X)) -> active#(isNatList(X)) p46: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p47: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p48: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p49: mark#(U122(X)) -> mark#(X) p50: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p51: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p52: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p53: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p54: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p55: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p56: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p57: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p58: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p59: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p60: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p61: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p62: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p63: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p64: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p65: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p66: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p67: mark#(U21(X1,X2)) -> mark#(X1) p68: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p69: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p70: mark#(U22(X1,X2)) -> mark#(X1) p71: mark#(U23(X)) -> mark#(X) p72: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p73: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p74: mark#(U31(X1,X2)) -> mark#(X1) p75: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p76: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p77: mark#(U32(X1,X2)) -> mark#(X1) p78: mark#(U33(X)) -> mark#(X) p79: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p80: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p81: mark#(U41(X1,X2,X3)) -> mark#(X1) p82: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p83: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p84: mark#(U42(X1,X2,X3)) -> mark#(X1) p85: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p86: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p87: mark#(U43(X1,X2,X3)) -> mark#(X1) p88: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p89: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p90: mark#(U44(X1,X2,X3)) -> mark#(X1) p91: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p92: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p93: mark#(U45(X1,X2)) -> mark#(X1) p94: mark#(U46(X)) -> active#(U46(mark(X))) p95: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p96: mark#(U46(X)) -> mark#(X) p97: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p98: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p99: mark#(U51(X1,X2)) -> mark#(X1) p100: mark#(U52(X)) -> mark#(X) p101: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p102: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p103: mark#(U61(X1,X2)) -> mark#(X1) p104: mark#(U62(X)) -> mark#(X) p105: mark#(U71(X)) -> mark#(X) p106: mark#(U81(X)) -> mark#(X) p107: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p108: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p109: mark#(U91(X1,X2,X3)) -> mark#(X1) p110: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p111: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p112: mark#(U92(X1,X2,X3)) -> mark#(X1) p113: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p114: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p115: mark#(U93(X1,X2,X3)) -> mark#(X1) p116: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p117: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p118: mark#(U94(X1,X2,X3)) -> mark#(X1) p119: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p120: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p121: mark#(U95(X1,X2)) -> mark#(X1) p122: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p123: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p124: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p125: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p126: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = 147 U96_A(x1) = 26 U101_A(x1,x2,x3) = 156 active#_A(x1) = max{0, x1 - 9} mark_A(x1) = max{4, x1 - 18} tt_A = 23 U102_A(x1,x2,x3) = 156 isNatKind_A(x1) = 156 U103_A(x1,x2,x3) = 156 isNatIListKind_A(x1) = 156 U104_A(x1,x2,x3) = 156 U105_A(x1,x2) = 156 isNat_A(x1) = 156 U106_A(x1) = 26 isNatIList_A(x1) = 156 U11_A(x1,x2) = 156 U12_A(x1,x2) = 156 U111_A(x1,x2,x3) = 156 U112_A(x1,x2,x3) = 156 U113_A(x1,x2,x3) = 156 U114_A(x1,x2) = 156 s_A(x1) = 26 length_A(x1) = 156 U13_A(x1) = 58 isNatList_A(x1) = 156 U121_A(x1,x2) = 156 U122_A(x1) = 50 U131_A(x1,x2,x3,x4) = 156 U132_A(x1,x2,x3,x4) = 156 U133_A(x1,x2,x3,x4) = 156 U134_A(x1,x2,x3,x4) = 156 U135_A(x1,x2,x3,x4) = 156 U136_A(x1,x2,x3,x4) = 156 cons_A(x1,x2) = 24 take_A(x1,x2) = 156 U21_A(x1,x2) = 156 U22_A(x1,x2) = 156 U23_A(x1) = 156 U31_A(x1,x2) = 156 U32_A(x1,x2) = 156 U33_A(x1) = 156 U41_A(x1,x2,x3) = 156 U42_A(x1,x2,x3) = 156 U43_A(x1,x2,x3) = 156 U44_A(x1,x2,x3) = 156 U45_A(x1,x2) = 156 U46_A(x1) = 23 U51_A(x1,x2) = 156 U52_A(x1) = 24 U61_A(x1,x2) = 156 U62_A(x1) = 156 U91_A(x1,x2,x3) = 156 U92_A(x1,x2,x3) = 156 U93_A(x1,x2,x3) = 156 U94_A(x1,x2,x3) = 156 U95_A(x1,x2) = 156 U71_A(x1) = 156 U81_A(x1) = 24 |0|_A = 24 active_A(x1) = max{5, x1 - 18} zeros_A = 24 nil_A = 24 The next rules are strictly ordered: p94 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U101(X1,X2,X3)) -> mark#(X1) p5: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p6: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p7: mark#(U102(X1,X2,X3)) -> mark#(X1) p8: mark#(isNatKind(X)) -> active#(isNatKind(X)) p9: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p10: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p11: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p12: mark#(U103(X1,X2,X3)) -> mark#(X1) p13: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p14: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p15: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p16: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p17: mark#(U104(X1,X2,X3)) -> mark#(X1) p18: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p19: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p20: mark#(U105(X1,X2)) -> mark#(X1) p21: mark#(isNat(X)) -> active#(isNat(X)) p22: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p23: mark#(U106(X)) -> mark#(X) p24: mark#(isNatIList(X)) -> active#(isNatIList(X)) p25: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p26: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p27: active#(U114(tt(),L)) -> mark#(s(length(L))) p28: mark#(U11(X1,X2)) -> mark#(X1) p29: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p30: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p31: mark#(U12(X1,X2)) -> mark#(X1) p32: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p33: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p34: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p35: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p36: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p37: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p38: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p39: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p40: mark#(s(X)) -> mark#(X) p41: mark#(length(X)) -> active#(length(mark(X))) p42: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p43: mark#(length(X)) -> mark#(X) p44: mark#(U13(X)) -> mark#(X) p45: mark#(isNatList(X)) -> active#(isNatList(X)) p46: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p47: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p48: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p49: mark#(U122(X)) -> mark#(X) p50: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p51: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p52: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p53: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p54: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p55: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p56: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p57: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p58: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p59: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p60: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p61: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p62: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p63: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p64: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p65: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p66: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p67: mark#(U21(X1,X2)) -> mark#(X1) p68: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p69: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p70: mark#(U22(X1,X2)) -> mark#(X1) p71: mark#(U23(X)) -> mark#(X) p72: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p73: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p74: mark#(U31(X1,X2)) -> mark#(X1) p75: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p76: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p77: mark#(U32(X1,X2)) -> mark#(X1) p78: mark#(U33(X)) -> mark#(X) p79: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p80: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p81: mark#(U41(X1,X2,X3)) -> mark#(X1) p82: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p83: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p84: mark#(U42(X1,X2,X3)) -> mark#(X1) p85: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p86: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p87: mark#(U43(X1,X2,X3)) -> mark#(X1) p88: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p89: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p90: mark#(U44(X1,X2,X3)) -> mark#(X1) p91: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p92: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p93: mark#(U45(X1,X2)) -> mark#(X1) p94: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p95: mark#(U46(X)) -> mark#(X) p96: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p97: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p98: mark#(U51(X1,X2)) -> mark#(X1) p99: mark#(U52(X)) -> mark#(X) p100: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p101: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p102: mark#(U61(X1,X2)) -> mark#(X1) p103: mark#(U62(X)) -> mark#(X) p104: mark#(U71(X)) -> mark#(X) p105: mark#(U81(X)) -> mark#(X) p106: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p107: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p108: mark#(U91(X1,X2,X3)) -> mark#(X1) p109: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p110: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p111: mark#(U92(X1,X2,X3)) -> mark#(X1) p112: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p113: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p114: mark#(U93(X1,X2,X3)) -> mark#(X1) p115: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p116: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p117: mark#(U94(X1,X2,X3)) -> mark#(X1) p118: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p119: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p120: mark#(U95(X1,X2)) -> mark#(X1) p121: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p122: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p123: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p124: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p125: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112, p113, p114, p115, p116, p117, p118, p119, p120, p121, p122, p123, p124, p125} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> mark#(X1) p6: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p7: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p8: mark#(U93(X1,X2,X3)) -> mark#(X1) p9: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p10: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p11: mark#(U92(X1,X2,X3)) -> mark#(X1) p12: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p13: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p14: mark#(U91(X1,X2,X3)) -> mark#(X1) p15: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p16: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p17: mark#(U81(X)) -> mark#(X) p18: mark#(U71(X)) -> mark#(X) p19: mark#(U62(X)) -> mark#(X) p20: mark#(U61(X1,X2)) -> mark#(X1) p21: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p22: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p23: mark#(U52(X)) -> mark#(X) p24: mark#(U51(X1,X2)) -> mark#(X1) p25: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p26: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p27: mark#(U46(X)) -> mark#(X) p28: mark#(U45(X1,X2)) -> mark#(X1) p29: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p30: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p31: mark#(U44(X1,X2,X3)) -> mark#(X1) p32: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p33: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p34: mark#(U43(X1,X2,X3)) -> mark#(X1) p35: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p36: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p37: mark#(U42(X1,X2,X3)) -> mark#(X1) p38: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p39: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p40: mark#(U41(X1,X2,X3)) -> mark#(X1) p41: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p42: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p43: mark#(U33(X)) -> mark#(X) p44: mark#(U32(X1,X2)) -> mark#(X1) p45: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p46: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p47: mark#(U31(X1,X2)) -> mark#(X1) p48: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p49: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p50: mark#(U23(X)) -> mark#(X) p51: mark#(U22(X1,X2)) -> mark#(X1) p52: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p53: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p54: mark#(U21(X1,X2)) -> mark#(X1) p55: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p56: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p57: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p58: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p59: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p60: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p61: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p62: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p63: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p64: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p65: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p66: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p67: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p68: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p69: mark#(U131(X1,X2,X3,X4)) -> mark#(X1) p70: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p71: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p72: mark#(U122(X)) -> mark#(X) p73: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p74: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p75: mark#(isNatList(X)) -> active#(isNatList(X)) p76: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p77: mark#(U13(X)) -> mark#(X) p78: mark#(length(X)) -> mark#(X) p79: mark#(length(X)) -> active#(length(mark(X))) p80: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p81: mark#(s(X)) -> mark#(X) p82: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p83: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p84: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p85: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p86: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p87: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p88: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p89: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p90: mark#(U12(X1,X2)) -> mark#(X1) p91: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p92: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p93: mark#(U11(X1,X2)) -> mark#(X1) p94: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p95: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p96: mark#(isNatIList(X)) -> active#(isNatIList(X)) p97: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p98: mark#(U106(X)) -> mark#(X) p99: mark#(isNat(X)) -> active#(isNat(X)) p100: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p101: mark#(U105(X1,X2)) -> mark#(X1) p102: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p103: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p104: mark#(U104(X1,X2,X3)) -> mark#(X1) p105: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p106: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p107: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p108: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p109: mark#(U103(X1,X2,X3)) -> mark#(X1) p110: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p111: active#(U114(tt(),L)) -> mark#(s(length(L))) p112: mark#(isNatKind(X)) -> active#(isNatKind(X)) p113: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p114: mark#(U102(X1,X2,X3)) -> mark#(X1) p115: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p116: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p117: mark#(U101(X1,X2,X3)) -> mark#(X1) p118: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p119: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p120: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p121: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p122: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p123: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p124: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p125: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = x1 + 1 U96_A(x1) = max{126, x1} U95_A(x1,x2) = max{x1, x2 + 126} active#_A(x1) = max{9, x1 + 1} mark_A(x1) = max{5, x1} take_A(x1,x2) = max{166, x1 + 161, x2 + 157} s_A(x1) = max{146, x1} cons_A(x1,x2) = max{74, x1 + 69, x2} U131_A(x1,x2,x3,x4) = max{x1 + 10, x2 + 157, x3 + 161, x4 + 226} isNatIList_A(x1) = x1 + 146 U94_A(x1,x2,x3) = max{x1 + 46, x2 + 66, x3 + 126} |0|_A = 149 U121_A(x1,x2) = max{x1 + 10, x2 + 157} U93_A(x1,x2,x3) = max{x1 + 30, x2 + 66, x3 + 126} length_A(x1) = max{148, x1 + 135} U111_A(x1,x2,x3) = max{x1 + 9, x2 + 135, x3 + 203} isNatList_A(x1) = x1 + 126 U92_A(x1,x2,x3) = max{x1, x2 + 66, x3 + 126} U101_A(x1,x2,x3) = max{x1 + 268, x2 + 274, x3 + 283} isNatKind_A(x1) = x1 + 19 U91_A(x1,x2,x3) = max{x1, x2 + 195, x3 + 126} U81_A(x1) = max{6, x1} U71_A(x1) = max{167, x1} U62_A(x1) = max{237, x1} U61_A(x1,x2) = max{x1 + 221, x2 + 237} U52_A(x1) = max{15, x1} U51_A(x1,x2) = max{x1, x2 + 80} isNatIListKind_A(x1) = x1 + 80 U46_A(x1) = max{10, x1} U45_A(x1,x2) = max{x1, x2 + 146} U44_A(x1,x2,x3) = max{x1 + 58, x2 + 67, x3 + 146} U43_A(x1,x2,x3) = max{x1 + 66, x2 + 72, x3 + 146} U41_A(x1,x2,x3) = max{x1 + 47, x2 + 74, x3 + 146} U42_A(x1,x2,x3) = max{x1, x2 + 73, x3 + 146} U31_A(x1,x2) = max{x1 + 66, x2 + 126} isNat_A(x1) = x1 + 66 U21_A(x1,x2) = max{x1, x2 + 66} U33_A(x1) = max{15, x1} U32_A(x1,x2) = max{x1, x2 + 126} U11_A(x1,x2) = max{x1 + 9, x2 + 201} tt_A = 16 U23_A(x1) = max{9, x1} U22_A(x1,x2) = max{x1, x2 + 66} U136_A(x1,x2,x3,x4) = max{x1 + 147, x2 + 157, x3 + 161, x4 + 166} U135_A(x1,x2,x3,x4) = max{x1 + 151, x2 + 157, x3 + 161, x4 + 166} U134_A(x1,x2,x3,x4) = max{x1 + 133, x2 + 157, x3 + 161, x4 + 217} U133_A(x1,x2,x3,x4) = max{x1 + 95, x2 + 157, x3 + 161, x4 + 217} U132_A(x1,x2,x3,x4) = max{x1 + 77, x2 + 157, x3 + 161, x4 + 217} U122_A(x1) = max{157, x1} U13_A(x1) = max{201, x1} U114_A(x1,x2) = max{151, x1 + 131, x2 + 135} U113_A(x1,x2,x3) = max{x1 + 135, x2 + 135, x3 + 151} U112_A(x1,x2,x3) = max{x1 + 8, x2 + 135, x3 + 202} U12_A(x1,x2) = max{x1, x2 + 201} U106_A(x1) = max{147, x1} U105_A(x1,x2) = max{x1 + 80, x2 + 147} U104_A(x1,x2,x3) = max{x1 + 9, x2 + 146, x3 + 148} U103_A(x1,x2,x3) = max{x1, x2 + 146, x3 + 149} U102_A(x1,x2,x3) = max{x1, x2 + 274, x3 + 149} active_A(x1) = max{6, x1} zeros_A = 218 nil_A = 17 The next rules are strictly ordered: p5, p8, p20, p31, p34, p40, p47, p69, p78, p93, p101, p104, p117 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p6: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p7: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p8: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p9: mark#(U92(X1,X2,X3)) -> mark#(X1) p10: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p11: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p12: mark#(U91(X1,X2,X3)) -> mark#(X1) p13: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p14: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p15: mark#(U81(X)) -> mark#(X) p16: mark#(U71(X)) -> mark#(X) p17: mark#(U62(X)) -> mark#(X) p18: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p19: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p20: mark#(U52(X)) -> mark#(X) p21: mark#(U51(X1,X2)) -> mark#(X1) p22: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U46(X)) -> mark#(X) p25: mark#(U45(X1,X2)) -> mark#(X1) p26: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p27: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p28: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p29: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p30: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p31: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p32: mark#(U42(X1,X2,X3)) -> mark#(X1) p33: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p34: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p35: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p36: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p37: mark#(U33(X)) -> mark#(X) p38: mark#(U32(X1,X2)) -> mark#(X1) p39: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p40: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p41: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p42: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p43: mark#(U23(X)) -> mark#(X) p44: mark#(U22(X1,X2)) -> mark#(X1) p45: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p46: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p47: mark#(U21(X1,X2)) -> mark#(X1) p48: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p49: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p50: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p51: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p52: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p53: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p54: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p55: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p56: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p57: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p58: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p59: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p60: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p61: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p62: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p63: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p64: mark#(U122(X)) -> mark#(X) p65: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p66: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p67: mark#(isNatList(X)) -> active#(isNatList(X)) p68: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p69: mark#(U13(X)) -> mark#(X) p70: mark#(length(X)) -> active#(length(mark(X))) p71: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p72: mark#(s(X)) -> mark#(X) p73: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p74: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p75: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p76: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p77: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p78: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p79: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p80: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p81: mark#(U12(X1,X2)) -> mark#(X1) p82: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p83: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p84: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p85: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p86: mark#(isNatIList(X)) -> active#(isNatIList(X)) p87: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p88: mark#(U106(X)) -> mark#(X) p89: mark#(isNat(X)) -> active#(isNat(X)) p90: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p91: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p92: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p93: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p94: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p95: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p96: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p97: mark#(U103(X1,X2,X3)) -> mark#(X1) p98: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p99: active#(U114(tt(),L)) -> mark#(s(length(L))) p100: mark#(isNatKind(X)) -> active#(isNatKind(X)) p101: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p102: mark#(U102(X1,X2,X3)) -> mark#(X1) p103: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p104: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p105: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p106: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p107: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p108: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p109: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p110: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p111: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p112: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108, p109, p110, p111, p112} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p5: active#(U102(tt(),V1,V2)) -> mark#(U103(isNatIListKind(V2),V1,V2)) p6: mark#(U102(X1,X2,X3)) -> mark#(X1) p7: mark#(isNatKind(X)) -> active#(isNatKind(X)) p8: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p9: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p10: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p11: mark#(U103(X1,X2,X3)) -> mark#(X1) p12: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p13: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p14: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p15: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p16: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p17: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p18: mark#(isNat(X)) -> active#(isNat(X)) p19: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p20: mark#(U106(X)) -> mark#(X) p21: mark#(isNatIList(X)) -> active#(isNatIList(X)) p22: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p23: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p24: active#(U114(tt(),L)) -> mark#(s(length(L))) p25: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p26: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p27: mark#(U12(X1,X2)) -> mark#(X1) p28: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p29: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p30: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p31: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p32: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p33: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p34: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p35: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p36: mark#(s(X)) -> mark#(X) p37: mark#(length(X)) -> active#(length(mark(X))) p38: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p39: mark#(U13(X)) -> mark#(X) p40: mark#(isNatList(X)) -> active#(isNatList(X)) p41: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p42: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p43: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p44: mark#(U122(X)) -> mark#(X) p45: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p46: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p47: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p48: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p49: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p50: active#(U31(tt(),V)) -> mark#(U32(isNatIListKind(V),V)) p51: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p52: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p53: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p54: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p55: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p56: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p57: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p58: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p59: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p60: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p61: mark#(U21(X1,X2)) -> mark#(X1) p62: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p63: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p64: mark#(U22(X1,X2)) -> mark#(X1) p65: mark#(U23(X)) -> mark#(X) p66: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p67: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p68: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p69: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p70: mark#(U32(X1,X2)) -> mark#(X1) p71: mark#(U33(X)) -> mark#(X) p72: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p73: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p74: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p75: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p76: mark#(U42(X1,X2,X3)) -> mark#(X1) p77: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p78: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p79: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p80: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p81: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p82: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p83: mark#(U45(X1,X2)) -> mark#(X1) p84: mark#(U46(X)) -> mark#(X) p85: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p86: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p87: mark#(U51(X1,X2)) -> mark#(X1) p88: mark#(U52(X)) -> mark#(X) p89: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p90: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p91: mark#(U62(X)) -> mark#(X) p92: mark#(U71(X)) -> mark#(X) p93: mark#(U81(X)) -> mark#(X) p94: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p95: active#(isNatIList(V)) -> mark#(U31(isNatIListKind(V),V)) p96: mark#(U91(X1,X2,X3)) -> mark#(X1) p97: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p98: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p99: mark#(U92(X1,X2,X3)) -> mark#(X1) p100: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p101: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p102: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p103: active#(isNatIListKind(take(V1,V2))) -> mark#(U61(isNatKind(V1),V2)) p104: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p105: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p106: mark#(U95(X1,X2)) -> mark#(X1) p107: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p108: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p109: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p110: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p111: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p112: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = x1 + 71 U96_A(x1) = max{122, x1} U101_A(x1,x2,x3) = max{x1 + 433, x2 + 433, x3 + 433} active#_A(x1) = x1 + 71 mark_A(x1) = x1 tt_A = 122 U102_A(x1,x2,x3) = max{x1, x2 + 433, x3 + 433} isNatKind_A(x1) = max{12, x1 - 69} U103_A(x1,x2,x3) = max{x1, x2 + 249, x3 + 363} isNatIListKind_A(x1) = x1 + 40 U104_A(x1,x2,x3) = max{x1 + 124, x2 + 249, x3 + 362} U105_A(x1,x2) = max{x1 + 236, x2 + 361} isNat_A(x1) = x1 + 13 U106_A(x1) = max{361, x1} isNatIList_A(x1) = x1 + 360 U11_A(x1,x2) = max{x1 + 5, x2 + 122} U12_A(x1,x2) = max{x1, x2 + 122} U111_A(x1,x2,x3) = max{x1 + 5, x2 + 109, x3 + 111} U112_A(x1,x2,x3) = max{x1 + 69, x2 + 109, x3 + 110} U113_A(x1,x2,x3) = max{x1 + 97, x2 + 109, x3 + 110} U114_A(x1,x2) = max{x1 + 83, x2 + 109} s_A(x1) = max{81, x1} length_A(x1) = x1 + 109 U13_A(x1) = max{122, x1} isNatList_A(x1) = x1 + 103 U121_A(x1,x2) = max{x1 + 6, x2 + 40} U122_A(x1) = max{4, x1} U131_A(x1,x2,x3,x4) = max{x1 + 6, x2 + 366, x3 + 330, x4 + 414} U132_A(x1,x2,x3,x4) = max{x1 + 325, x2 + 366, x3 + 330, x4 + 413} U133_A(x1,x2,x3,x4) = max{x1 + 275, x2 + 366, x3 + 330, x4 + 412} U134_A(x1,x2,x3,x4) = max{x1 + 399, x2 + 366, x3 + 330, x4 + 397} U135_A(x1,x2,x3,x4) = max{x1 + 383, x2 + 366, x3 + 330, x4 + 383} U136_A(x1,x2,x3,x4) = max{x1 + 369, x2 + 366, x3 + 330, x4 + 383} cons_A(x1,x2) = max{x1 + 49, x2} take_A(x1,x2) = max{367, x1 + 330, x2 + 366} U21_A(x1,x2) = max{x1, x2 + 13} U22_A(x1,x2) = max{x1, x2 + 13} U23_A(x1) = max{4, x1} U31_A(x1,x2) = max{x1 + 2, x2 + 123} U32_A(x1,x2) = max{x1, x2 + 122} U33_A(x1) = max{122, x1} U41_A(x1,x2,x3) = max{x1 + 360, x2 + 359, x3 + 360} U42_A(x1,x2,x3) = max{x1, x2 + 326, x3 + 360} U43_A(x1,x2,x3) = max{x1 + 124, x2 + 325, x3 + 360} U44_A(x1,x2,x3) = max{x1 + 320, x2 + 248, x3 + 360} U45_A(x1,x2) = max{x1, x2 + 360} U46_A(x1) = max{360, x1} U51_A(x1,x2) = max{x1, x2 + 40} U52_A(x1) = max{39, x1} U61_A(x1,x2) = max{x1 + 41, x2 + 40} U62_A(x1) = max{4, x1} U91_A(x1,x2,x3) = max{x1, x2 + 70, x3 + 103} U92_A(x1,x2,x3) = max{x1, x2 + 69, x3 + 103} U93_A(x1,x2,x3) = max{x1 + 62, x2 + 63, x3 + 103} U94_A(x1,x2,x3) = max{x1 + 13, x2 + 14, x3 + 103} U95_A(x1,x2) = max{x1, x2 + 103} U71_A(x1) = max{11, x1} U81_A(x1) = max{11, x1} |0|_A = 191 active_A(x1) = max{3, x1} zeros_A = 240 nil_A = 82 The next rules are strictly ordered: p5, p50, p95, p103 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p5: mark#(U102(X1,X2,X3)) -> mark#(X1) p6: mark#(isNatKind(X)) -> active#(isNatKind(X)) p7: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p8: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p9: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p10: mark#(U103(X1,X2,X3)) -> mark#(X1) p11: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p12: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p13: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p14: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p15: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p16: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p17: mark#(isNat(X)) -> active#(isNat(X)) p18: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p19: mark#(U106(X)) -> mark#(X) p20: mark#(isNatIList(X)) -> active#(isNatIList(X)) p21: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p22: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p23: active#(U114(tt(),L)) -> mark#(s(length(L))) p24: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p25: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p26: mark#(U12(X1,X2)) -> mark#(X1) p27: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p28: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p29: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p30: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p31: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p32: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p33: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p34: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p35: mark#(s(X)) -> mark#(X) p36: mark#(length(X)) -> active#(length(mark(X))) p37: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p38: mark#(U13(X)) -> mark#(X) p39: mark#(isNatList(X)) -> active#(isNatList(X)) p40: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p41: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p42: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p43: mark#(U122(X)) -> mark#(X) p44: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p45: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p46: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p47: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p48: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p49: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p50: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p51: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p52: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p53: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p54: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p55: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p56: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p57: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p58: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p59: mark#(U21(X1,X2)) -> mark#(X1) p60: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p61: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p62: mark#(U22(X1,X2)) -> mark#(X1) p63: mark#(U23(X)) -> mark#(X) p64: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p65: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p66: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p67: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p68: mark#(U32(X1,X2)) -> mark#(X1) p69: mark#(U33(X)) -> mark#(X) p70: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p71: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p72: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p73: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p74: mark#(U42(X1,X2,X3)) -> mark#(X1) p75: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p76: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p77: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p78: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p79: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p80: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p81: mark#(U45(X1,X2)) -> mark#(X1) p82: mark#(U46(X)) -> mark#(X) p83: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p84: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p85: mark#(U51(X1,X2)) -> mark#(X1) p86: mark#(U52(X)) -> mark#(X) p87: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p88: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p89: mark#(U62(X)) -> mark#(X) p90: mark#(U71(X)) -> mark#(X) p91: mark#(U81(X)) -> mark#(X) p92: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p93: mark#(U91(X1,X2,X3)) -> mark#(X1) p94: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p95: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p96: mark#(U92(X1,X2,X3)) -> mark#(X1) p97: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p98: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p99: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p100: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p101: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p102: mark#(U95(X1,X2)) -> mark#(X1) p103: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p104: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p105: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p106: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p107: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p108: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107, p108} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p6: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p7: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p8: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p9: mark#(U92(X1,X2,X3)) -> mark#(X1) p10: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p11: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p12: mark#(U91(X1,X2,X3)) -> mark#(X1) p13: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p14: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p15: mark#(U81(X)) -> mark#(X) p16: mark#(U71(X)) -> mark#(X) p17: mark#(U62(X)) -> mark#(X) p18: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p19: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p20: mark#(U52(X)) -> mark#(X) p21: mark#(U51(X1,X2)) -> mark#(X1) p22: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U46(X)) -> mark#(X) p25: mark#(U45(X1,X2)) -> mark#(X1) p26: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p27: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p28: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p29: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p30: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p31: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p32: mark#(U42(X1,X2,X3)) -> mark#(X1) p33: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p34: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p35: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p36: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p37: mark#(U33(X)) -> mark#(X) p38: mark#(U32(X1,X2)) -> mark#(X1) p39: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p40: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p41: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p42: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p43: mark#(U23(X)) -> mark#(X) p44: mark#(U22(X1,X2)) -> mark#(X1) p45: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p46: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p47: mark#(U21(X1,X2)) -> mark#(X1) p48: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p49: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p50: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p51: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p52: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p53: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p54: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p55: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p56: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p57: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p58: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p59: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p60: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p61: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p62: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p63: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p64: mark#(U122(X)) -> mark#(X) p65: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p66: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p67: mark#(isNatList(X)) -> active#(isNatList(X)) p68: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p69: mark#(U13(X)) -> mark#(X) p70: mark#(length(X)) -> active#(length(mark(X))) p71: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p72: mark#(s(X)) -> mark#(X) p73: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p74: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p75: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p76: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p77: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p78: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p79: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p80: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p81: mark#(U12(X1,X2)) -> mark#(X1) p82: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p83: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p84: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p85: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p86: mark#(isNatIList(X)) -> active#(isNatIList(X)) p87: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p88: mark#(U106(X)) -> mark#(X) p89: mark#(isNat(X)) -> active#(isNat(X)) p90: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p91: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p92: active#(U114(tt(),L)) -> mark#(s(length(L))) p93: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p94: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p95: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p96: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p97: mark#(U103(X1,X2,X3)) -> mark#(X1) p98: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p99: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p100: mark#(isNatKind(X)) -> active#(isNatKind(X)) p101: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p102: mark#(U102(X1,X2,X3)) -> mark#(X1) p103: mark#(U102(X1,X2,X3)) -> active#(U102(mark(X1),X2,X3)) p104: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p105: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p106: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p107: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p108: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = 414 U96_A(x1) = 396 U95_A(x1,x2) = 392 active#_A(x1) = x1 + 22 mark_A(x1) = max{284, x1 - 117} take_A(x1,x2) = 392 s_A(x1) = 0 cons_A(x1,x2) = 401 U131_A(x1,x2,x3,x4) = 392 isNatIList_A(x1) = 392 U94_A(x1,x2,x3) = 392 |0|_A = 400 U121_A(x1,x2) = 392 U93_A(x1,x2,x3) = 392 length_A(x1) = 392 U111_A(x1,x2,x3) = 392 isNatList_A(x1) = 392 U92_A(x1,x2,x3) = 392 U101_A(x1,x2,x3) = 392 isNatKind_A(x1) = 392 U91_A(x1,x2,x3) = 392 U81_A(x1) = 55 U71_A(x1) = 392 U62_A(x1) = 395 U61_A(x1,x2) = 392 U52_A(x1) = 401 U51_A(x1,x2) = 392 isNatIListKind_A(x1) = 392 U46_A(x1) = 396 U45_A(x1,x2) = 392 U44_A(x1,x2,x3) = 392 U41_A(x1,x2,x3) = 392 U43_A(x1,x2,x3) = 392 isNat_A(x1) = 392 U21_A(x1,x2) = 392 U42_A(x1,x2,x3) = 392 U11_A(x1,x2) = 392 tt_A = 400 U33_A(x1) = 396 U32_A(x1,x2) = 392 U31_A(x1,x2) = 392 U23_A(x1) = 396 U22_A(x1,x2) = 392 U136_A(x1,x2,x3,x4) = 392 U135_A(x1,x2,x3,x4) = 392 U134_A(x1,x2,x3,x4) = 392 U133_A(x1,x2,x3,x4) = 392 U132_A(x1,x2,x3,x4) = 392 U122_A(x1) = 396 U13_A(x1) = 396 U114_A(x1,x2) = 392 U113_A(x1,x2,x3) = 392 U112_A(x1,x2,x3) = 392 U12_A(x1,x2) = 392 U106_A(x1) = 55 U105_A(x1,x2) = 392 U104_A(x1,x2,x3) = 392 U103_A(x1,x2,x3) = 392 U102_A(x1,x2,x3) = 0 active_A(x1) = 284 zeros_A = 399 nil_A = 400 The next rules are strictly ordered: p103 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p6: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p7: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p8: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p9: mark#(U92(X1,X2,X3)) -> mark#(X1) p10: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p11: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p12: mark#(U91(X1,X2,X3)) -> mark#(X1) p13: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p14: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p15: mark#(U81(X)) -> mark#(X) p16: mark#(U71(X)) -> mark#(X) p17: mark#(U62(X)) -> mark#(X) p18: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p19: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p20: mark#(U52(X)) -> mark#(X) p21: mark#(U51(X1,X2)) -> mark#(X1) p22: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U46(X)) -> mark#(X) p25: mark#(U45(X1,X2)) -> mark#(X1) p26: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p27: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p28: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p29: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p30: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p31: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p32: mark#(U42(X1,X2,X3)) -> mark#(X1) p33: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p34: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p35: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p36: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p37: mark#(U33(X)) -> mark#(X) p38: mark#(U32(X1,X2)) -> mark#(X1) p39: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p40: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p41: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p42: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p43: mark#(U23(X)) -> mark#(X) p44: mark#(U22(X1,X2)) -> mark#(X1) p45: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p46: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p47: mark#(U21(X1,X2)) -> mark#(X1) p48: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p49: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p50: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p51: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p52: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p53: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p54: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p55: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p56: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p57: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p58: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p59: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p60: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p61: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p62: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p63: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p64: mark#(U122(X)) -> mark#(X) p65: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p66: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p67: mark#(isNatList(X)) -> active#(isNatList(X)) p68: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p69: mark#(U13(X)) -> mark#(X) p70: mark#(length(X)) -> active#(length(mark(X))) p71: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p72: mark#(s(X)) -> mark#(X) p73: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p74: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p75: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p76: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p77: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p78: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p79: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p80: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p81: mark#(U12(X1,X2)) -> mark#(X1) p82: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p83: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p84: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p85: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p86: mark#(isNatIList(X)) -> active#(isNatIList(X)) p87: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p88: mark#(U106(X)) -> mark#(X) p89: mark#(isNat(X)) -> active#(isNat(X)) p90: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p91: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p92: active#(U114(tt(),L)) -> mark#(s(length(L))) p93: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p94: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p95: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p96: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p97: mark#(U103(X1,X2,X3)) -> mark#(X1) p98: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p99: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p100: mark#(isNatKind(X)) -> active#(isNatKind(X)) p101: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p102: mark#(U102(X1,X2,X3)) -> mark#(X1) p103: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p104: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p105: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p106: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p107: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106, p107} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> mark#(X1) p5: mark#(isNatKind(X)) -> active#(isNatKind(X)) p6: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p7: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p8: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p9: mark#(U103(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p11: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p12: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p13: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p14: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p15: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p16: mark#(isNat(X)) -> active#(isNat(X)) p17: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p18: mark#(U106(X)) -> mark#(X) p19: mark#(isNatIList(X)) -> active#(isNatIList(X)) p20: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p21: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p22: active#(U114(tt(),L)) -> mark#(s(length(L))) p23: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p24: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p25: mark#(U12(X1,X2)) -> mark#(X1) p26: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p27: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p28: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p29: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p30: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p31: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p32: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p33: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p34: mark#(s(X)) -> mark#(X) p35: mark#(length(X)) -> active#(length(mark(X))) p36: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p37: mark#(U13(X)) -> mark#(X) p38: mark#(isNatList(X)) -> active#(isNatList(X)) p39: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p40: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p41: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p42: mark#(U122(X)) -> mark#(X) p43: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p44: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p45: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p46: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p47: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p48: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p49: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p50: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p51: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p52: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p53: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p54: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p55: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p56: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p57: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p58: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p59: mark#(U21(X1,X2)) -> mark#(X1) p60: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p61: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p62: mark#(U22(X1,X2)) -> mark#(X1) p63: mark#(U23(X)) -> mark#(X) p64: mark#(U31(X1,X2)) -> active#(U31(mark(X1),X2)) p65: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p66: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p67: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p68: mark#(U32(X1,X2)) -> mark#(X1) p69: mark#(U33(X)) -> mark#(X) p70: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p71: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p72: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p73: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p74: mark#(U42(X1,X2,X3)) -> mark#(X1) p75: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p76: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p77: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p78: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p79: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p80: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p81: mark#(U45(X1,X2)) -> mark#(X1) p82: mark#(U46(X)) -> mark#(X) p83: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p84: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p85: mark#(U51(X1,X2)) -> mark#(X1) p86: mark#(U52(X)) -> mark#(X) p87: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p88: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p89: mark#(U62(X)) -> mark#(X) p90: mark#(U71(X)) -> mark#(X) p91: mark#(U81(X)) -> mark#(X) p92: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p93: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p94: mark#(U91(X1,X2,X3)) -> mark#(X1) p95: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p96: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p97: mark#(U92(X1,X2,X3)) -> mark#(X1) p98: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p99: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p100: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p101: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p102: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p103: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p104: mark#(U95(X1,X2)) -> mark#(X1) p105: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p106: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p107: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = 23 U96_A(x1) = 56 U101_A(x1,x2,x3) = 29 active#_A(x1) = max{0, x1 - 6} mark_A(x1) = max{55, x1 - 1} tt_A = 27 U102_A(x1,x2,x3) = 29 isNatKind_A(x1) = 29 U103_A(x1,x2,x3) = 29 U104_A(x1,x2,x3) = 29 isNatIListKind_A(x1) = 29 U105_A(x1,x2) = 29 isNat_A(x1) = 29 U106_A(x1) = 56 isNatIList_A(x1) = 29 U11_A(x1,x2) = 29 U12_A(x1,x2) = 29 U111_A(x1,x2,x3) = 29 U112_A(x1,x2,x3) = 29 U113_A(x1,x2,x3) = 29 U114_A(x1,x2) = 29 s_A(x1) = 0 length_A(x1) = 29 U13_A(x1) = 56 isNatList_A(x1) = 29 U121_A(x1,x2) = 29 U122_A(x1) = 30 U131_A(x1,x2,x3,x4) = 29 U132_A(x1,x2,x3,x4) = 29 U133_A(x1,x2,x3,x4) = 29 U134_A(x1,x2,x3,x4) = 29 U135_A(x1,x2,x3,x4) = 29 U136_A(x1,x2,x3,x4) = 29 cons_A(x1,x2) = 20 take_A(x1,x2) = 29 U21_A(x1,x2) = 29 U22_A(x1,x2) = 29 U23_A(x1) = 29 U32_A(x1,x2) = 29 U33_A(x1) = 56 U41_A(x1,x2,x3) = 29 U42_A(x1,x2,x3) = 29 U43_A(x1,x2,x3) = 29 U44_A(x1,x2,x3) = 29 U45_A(x1,x2) = 29 U46_A(x1) = 56 U51_A(x1,x2) = 29 U52_A(x1) = 56 U31_A(x1,x2) = 28 U61_A(x1,x2) = 29 U62_A(x1) = 56 U91_A(x1,x2,x3) = 29 U92_A(x1,x2,x3) = 29 U93_A(x1,x2,x3) = 29 U94_A(x1,x2,x3) = 29 U95_A(x1,x2) = 29 U71_A(x1) = 56 U81_A(x1) = 29 |0|_A = 56 active_A(x1) = max{55, x1 - 1} zeros_A = 65 nil_A = 55 The next rules are strictly ordered: p64 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> mark#(X1) p5: mark#(isNatKind(X)) -> active#(isNatKind(X)) p6: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p7: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p8: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p9: mark#(U103(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p11: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p12: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p13: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p14: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p15: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p16: mark#(isNat(X)) -> active#(isNat(X)) p17: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p18: mark#(U106(X)) -> mark#(X) p19: mark#(isNatIList(X)) -> active#(isNatIList(X)) p20: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p21: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p22: active#(U114(tt(),L)) -> mark#(s(length(L))) p23: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p24: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p25: mark#(U12(X1,X2)) -> mark#(X1) p26: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p27: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p28: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p29: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p30: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p31: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p32: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p33: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p34: mark#(s(X)) -> mark#(X) p35: mark#(length(X)) -> active#(length(mark(X))) p36: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p37: mark#(U13(X)) -> mark#(X) p38: mark#(isNatList(X)) -> active#(isNatList(X)) p39: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p40: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p41: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p42: mark#(U122(X)) -> mark#(X) p43: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p44: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p45: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p46: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p47: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p48: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p49: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p50: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p51: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p52: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p53: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p54: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p55: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p56: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p57: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p58: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p59: mark#(U21(X1,X2)) -> mark#(X1) p60: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p61: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p62: mark#(U22(X1,X2)) -> mark#(X1) p63: mark#(U23(X)) -> mark#(X) p64: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p65: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p66: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p67: mark#(U32(X1,X2)) -> mark#(X1) p68: mark#(U33(X)) -> mark#(X) p69: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p70: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p71: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p72: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p73: mark#(U42(X1,X2,X3)) -> mark#(X1) p74: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p75: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p76: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p77: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p78: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p79: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p80: mark#(U45(X1,X2)) -> mark#(X1) p81: mark#(U46(X)) -> mark#(X) p82: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p83: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p84: mark#(U51(X1,X2)) -> mark#(X1) p85: mark#(U52(X)) -> mark#(X) p86: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p87: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p88: mark#(U62(X)) -> mark#(X) p89: mark#(U71(X)) -> mark#(X) p90: mark#(U81(X)) -> mark#(X) p91: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p92: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p93: mark#(U91(X1,X2,X3)) -> mark#(X1) p94: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p95: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p96: mark#(U92(X1,X2,X3)) -> mark#(X1) p97: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p98: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p99: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p100: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p101: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p102: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p103: mark#(U95(X1,X2)) -> mark#(X1) p104: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p105: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p106: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105, p106} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p6: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p7: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p8: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p9: mark#(U92(X1,X2,X3)) -> mark#(X1) p10: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p11: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p12: mark#(U91(X1,X2,X3)) -> mark#(X1) p13: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p14: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p15: mark#(U81(X)) -> mark#(X) p16: mark#(U71(X)) -> mark#(X) p17: mark#(U62(X)) -> mark#(X) p18: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p19: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p20: mark#(U52(X)) -> mark#(X) p21: mark#(U51(X1,X2)) -> mark#(X1) p22: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U46(X)) -> mark#(X) p25: mark#(U45(X1,X2)) -> mark#(X1) p26: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p27: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p28: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p29: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p30: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p31: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p32: mark#(U42(X1,X2,X3)) -> mark#(X1) p33: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p34: active#(isNat(length(V1))) -> mark#(U11(isNatIListKind(V1),V1)) p35: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p36: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p37: mark#(U33(X)) -> mark#(X) p38: mark#(U32(X1,X2)) -> mark#(X1) p39: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p40: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p41: mark#(U23(X)) -> mark#(X) p42: mark#(U22(X1,X2)) -> mark#(X1) p43: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p44: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p45: mark#(U21(X1,X2)) -> mark#(X1) p46: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p47: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p48: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p49: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p50: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p51: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p52: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p53: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p54: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p55: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p56: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p57: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p58: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p59: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p60: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p61: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p62: mark#(U122(X)) -> mark#(X) p63: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p64: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p65: mark#(isNatList(X)) -> active#(isNatList(X)) p66: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p67: mark#(U13(X)) -> mark#(X) p68: mark#(length(X)) -> active#(length(mark(X))) p69: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p70: mark#(s(X)) -> mark#(X) p71: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p72: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p73: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p74: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p75: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p76: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p77: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p78: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p79: mark#(U12(X1,X2)) -> mark#(X1) p80: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p81: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p82: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p83: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p84: mark#(isNatIList(X)) -> active#(isNatIList(X)) p85: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p86: mark#(U106(X)) -> mark#(X) p87: mark#(isNat(X)) -> active#(isNat(X)) p88: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p89: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p90: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p91: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p92: active#(U114(tt(),L)) -> mark#(s(length(L))) p93: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p94: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p95: mark#(U103(X1,X2,X3)) -> mark#(X1) p96: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p97: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p98: mark#(isNatKind(X)) -> active#(isNatKind(X)) p99: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p100: mark#(U102(X1,X2,X3)) -> mark#(X1) p101: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p102: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p103: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p104: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p105: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p106: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = x1 + 2 U96_A(x1) = max{13, x1} U95_A(x1,x2) = max{x1, x2 + 19} active#_A(x1) = x1 + 2 mark_A(x1) = x1 take_A(x1,x2) = max{x1 + 142, x2 + 184} s_A(x1) = max{5, x1} cons_A(x1,x2) = max{x1 + 50, x2} U131_A(x1,x2,x3,x4) = max{x1 + 141, x2 + 184, x3 + 142, x4 + 106} isNatIList_A(x1) = x1 + 42 U94_A(x1,x2,x3) = max{x1 + 11, x2 + 45, x3 + 19} |0|_A = 4 U121_A(x1,x2) = max{x1 + 8, x2 + 184} U93_A(x1,x2,x3) = max{x1 + 2, x2 + 45, x3 + 19} length_A(x1) = x1 + 40 U111_A(x1,x2,x3) = max{x1 + 20, x2 + 40, x3 + 90} isNatList_A(x1) = x1 + 19 U92_A(x1,x2,x3) = max{x1, x2 + 45, x3 + 19} U101_A(x1,x2,x3) = max{x1 + 77, x2 + 89, x3 + 203} isNatKind_A(x1) = x1 + 44 U91_A(x1,x2,x3) = max{x1, x2 + 46, x3 + 19} U81_A(x1) = max{14, x1} U71_A(x1) = max{84, x1} U62_A(x1) = max{5, x1} U61_A(x1,x2) = max{x1 + 7, x2 + 7} U52_A(x1) = max{5, x1} U51_A(x1,x2) = max{x1, x2 + 7} isNatIListKind_A(x1) = x1 + 7 U46_A(x1) = max{42, x1} U45_A(x1,x2) = max{x1, x2 + 42} U44_A(x1,x2,x3) = max{x1 + 35, x2 + 45, x3 + 42} U41_A(x1,x2,x3) = max{x1 + 47, x2 + 46, x3 + 42} U43_A(x1,x2,x3) = max{x1 + 7, x2 + 45, x3 + 42} isNat_A(x1) = x1 + 45 U21_A(x1,x2) = max{x1, x2 + 45} U42_A(x1,x2,x3) = max{x1, x2 + 45, x3 + 42} U11_A(x1,x2) = max{x1 + 28, x2 + 29} tt_A = 14 U33_A(x1) = max{19, x1} U32_A(x1,x2) = max{x1, x2 + 19} U23_A(x1) = max{14, x1} U22_A(x1,x2) = max{x1, x2 + 45} U136_A(x1,x2,x3,x4) = max{x1 + 52, x2 + 184, x3 + 142, x4 + 51} U135_A(x1,x2,x3,x4) = max{x1 + 51, x2 + 184, x3 + 142, x4 + 96} U134_A(x1,x2,x3,x4) = max{x1 + 49, x2 + 184, x3 + 142, x4 + 96} U133_A(x1,x2,x3,x4) = max{x1 + 97, x2 + 184, x3 + 142, x4 + 96} U132_A(x1,x2,x3,x4) = max{x1 + 98, x2 + 184, x3 + 142, x4 + 97} U122_A(x1) = max{184, x1} U13_A(x1) = max{29, x1} U114_A(x1,x2) = max{x1 + 24, x2 + 40} U113_A(x1,x2,x3) = max{x1 + 8, x2 + 40, x3 + 68} U112_A(x1,x2,x3) = max{x1 + 27, x2 + 40, x3 + 90} U12_A(x1,x2) = max{x1, x2 + 29} U106_A(x1) = max{40, x1} U105_A(x1,x2) = max{x1 + 43, x2 + 42} U104_A(x1,x2,x3) = max{x1 + 82, x2 + 88, x3 + 83} U103_A(x1,x2,x3) = max{x1, x2 + 89, x3 + 89} U102_A(x1,x2,x3) = max{x1, x2 + 89, x3 + 203} active_A(x1) = max{4, x1} zeros_A = 54 nil_A = 7 U31_A(x1,x2) = x2 + 19 The next rules are strictly ordered: p34 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p6: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p7: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p8: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p9: mark#(U92(X1,X2,X3)) -> mark#(X1) p10: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p11: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p12: mark#(U91(X1,X2,X3)) -> mark#(X1) p13: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p14: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p15: mark#(U81(X)) -> mark#(X) p16: mark#(U71(X)) -> mark#(X) p17: mark#(U62(X)) -> mark#(X) p18: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p19: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p20: mark#(U52(X)) -> mark#(X) p21: mark#(U51(X1,X2)) -> mark#(X1) p22: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U46(X)) -> mark#(X) p25: mark#(U45(X1,X2)) -> mark#(X1) p26: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p27: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p28: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p29: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p30: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p31: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p32: mark#(U42(X1,X2,X3)) -> mark#(X1) p33: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p34: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p35: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p36: mark#(U33(X)) -> mark#(X) p37: mark#(U32(X1,X2)) -> mark#(X1) p38: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p39: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p40: mark#(U23(X)) -> mark#(X) p41: mark#(U22(X1,X2)) -> mark#(X1) p42: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p43: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p44: mark#(U21(X1,X2)) -> mark#(X1) p45: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p46: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p47: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p48: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p49: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p50: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p51: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p52: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p53: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p54: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p55: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p56: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p57: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p58: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p59: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p60: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p61: mark#(U122(X)) -> mark#(X) p62: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p63: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p64: mark#(isNatList(X)) -> active#(isNatList(X)) p65: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p66: mark#(U13(X)) -> mark#(X) p67: mark#(length(X)) -> active#(length(mark(X))) p68: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p69: mark#(s(X)) -> mark#(X) p70: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p71: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p72: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p73: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p74: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p75: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p76: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p77: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p78: mark#(U12(X1,X2)) -> mark#(X1) p79: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p80: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p81: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p82: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p83: mark#(isNatIList(X)) -> active#(isNatIList(X)) p84: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p85: mark#(U106(X)) -> mark#(X) p86: mark#(isNat(X)) -> active#(isNat(X)) p87: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p88: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p89: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p90: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p91: active#(U114(tt(),L)) -> mark#(s(length(L))) p92: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p93: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p94: mark#(U103(X1,X2,X3)) -> mark#(X1) p95: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p96: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p97: mark#(isNatKind(X)) -> active#(isNatKind(X)) p98: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p99: mark#(U102(X1,X2,X3)) -> mark#(X1) p100: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p101: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p102: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p103: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p104: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p105: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102, p103, p104, p105} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> mark#(X1) p5: mark#(isNatKind(X)) -> active#(isNatKind(X)) p6: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p7: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p8: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p9: mark#(U103(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p11: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p12: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p13: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p14: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p15: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p16: mark#(isNat(X)) -> active#(isNat(X)) p17: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p18: mark#(U106(X)) -> mark#(X) p19: mark#(isNatIList(X)) -> active#(isNatIList(X)) p20: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p21: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p22: active#(U114(tt(),L)) -> mark#(s(length(L))) p23: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p24: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p25: mark#(U12(X1,X2)) -> mark#(X1) p26: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p27: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p28: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p29: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p30: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p31: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p32: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p33: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p34: mark#(s(X)) -> mark#(X) p35: mark#(length(X)) -> active#(length(mark(X))) p36: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p37: mark#(U13(X)) -> mark#(X) p38: mark#(isNatList(X)) -> active#(isNatList(X)) p39: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p40: mark#(U121(X1,X2)) -> active#(U121(mark(X1),X2)) p41: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p42: mark#(U122(X)) -> mark#(X) p43: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p44: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p45: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p46: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p47: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p48: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p49: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p50: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p51: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p52: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p53: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p54: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p55: mark#(take(X1,X2)) -> active#(take(mark(X1),mark(X2))) p56: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p57: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p58: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p59: mark#(U21(X1,X2)) -> mark#(X1) p60: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p61: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p62: mark#(U22(X1,X2)) -> mark#(X1) p63: mark#(U23(X)) -> mark#(X) p64: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p65: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p66: mark#(U32(X1,X2)) -> mark#(X1) p67: mark#(U33(X)) -> mark#(X) p68: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p69: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p70: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p71: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p72: mark#(U42(X1,X2,X3)) -> mark#(X1) p73: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p74: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p75: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p76: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p77: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p78: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p79: mark#(U45(X1,X2)) -> mark#(X1) p80: mark#(U46(X)) -> mark#(X) p81: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p82: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p83: mark#(U51(X1,X2)) -> mark#(X1) p84: mark#(U52(X)) -> mark#(X) p85: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p86: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p87: mark#(U62(X)) -> mark#(X) p88: mark#(U71(X)) -> mark#(X) p89: mark#(U81(X)) -> mark#(X) p90: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p91: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p92: mark#(U91(X1,X2,X3)) -> mark#(X1) p93: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p94: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p95: mark#(U92(X1,X2,X3)) -> mark#(X1) p96: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p97: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p98: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p99: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p100: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p101: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p102: mark#(U95(X1,X2)) -> mark#(X1) p103: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p104: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p105: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = max{0, x1 - 49} U96_A(x1) = max{41, x1} U101_A(x1,x2,x3) = 41 active#_A(x1) = max{0, x1 - 131} mark_A(x1) = max{36, x1 + 31} tt_A = 41 U102_A(x1,x2,x3) = max{41, x1} isNatKind_A(x1) = 41 U103_A(x1,x2,x3) = max{41, x1} U104_A(x1,x2,x3) = 41 isNatIListKind_A(x1) = 41 U105_A(x1,x2) = max{41, x1 - 31} isNat_A(x1) = 41 U106_A(x1) = max{41, x1} isNatIList_A(x1) = 41 U11_A(x1,x2) = max{41, x1 - 30} U12_A(x1,x2) = max{41, x1} U111_A(x1,x2,x3) = 41 U112_A(x1,x2,x3) = max{41, x1 - 6} U113_A(x1,x2,x3) = max{41, x1 - 89} U114_A(x1,x2) = max{41, x1 - 42} s_A(x1) = max{41, x1} length_A(x1) = 41 U13_A(x1) = max{41, x1} isNatList_A(x1) = 41 U121_A(x1,x2) = max{444, x1 + 406} U122_A(x1) = max{365, x1 + 322} U131_A(x1,x2,x3,x4) = max{48, x1 + 1, x3 + 6} U132_A(x1,x2,x3,x4) = max{41, x1 - 30, x3 - 77} U133_A(x1,x2,x3,x4) = max{41, x1 - 83, x3 - 160} U134_A(x1,x2,x3,x4) = max{41, x1 - 31, x3 - 243} U135_A(x1,x2,x3,x4) = max{41, x3 - 325} U136_A(x1,x2,x3,x4) = max{41, x1 - 8, x3 - 407} cons_A(x1,x2) = 41 take_A(x1,x2) = max{529, x1 + 88, x2 + 35} U21_A(x1,x2) = max{41, x1} U22_A(x1,x2) = max{41, x1} U23_A(x1) = max{41, x1} U32_A(x1,x2) = max{41, x1} U33_A(x1) = max{41, x1} U41_A(x1,x2,x3) = 41 U42_A(x1,x2,x3) = max{41, x1} U43_A(x1,x2,x3) = max{41, x1 - 10} U44_A(x1,x2,x3) = max{41, x1 - 40} U45_A(x1,x2) = max{41, x1} U46_A(x1) = max{41, x1} U51_A(x1,x2) = max{41, x1} U52_A(x1) = max{41, x1} U61_A(x1,x2) = 41 U62_A(x1) = max{41, x1} U91_A(x1,x2,x3) = max{41, x1} U92_A(x1,x2,x3) = max{41, x1} U93_A(x1,x2,x3) = 41 U94_A(x1,x2,x3) = 41 U95_A(x1,x2) = max{41, x1} U71_A(x1) = max{41, x1} U81_A(x1) = max{41, x1} |0|_A = 41 active_A(x1) = max{72, x1} zeros_A = 619 nil_A = 333 U31_A(x1,x2) = max{41, x1} The next rules are strictly ordered: p40, p42, p55 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> mark#(X1) p5: mark#(isNatKind(X)) -> active#(isNatKind(X)) p6: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p7: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p8: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p9: mark#(U103(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p11: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p12: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p13: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p14: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p15: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p16: mark#(isNat(X)) -> active#(isNat(X)) p17: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p18: mark#(U106(X)) -> mark#(X) p19: mark#(isNatIList(X)) -> active#(isNatIList(X)) p20: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p21: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p22: active#(U114(tt(),L)) -> mark#(s(length(L))) p23: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p24: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p25: mark#(U12(X1,X2)) -> mark#(X1) p26: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p27: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p28: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p29: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p30: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p31: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p32: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p33: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p34: mark#(s(X)) -> mark#(X) p35: mark#(length(X)) -> active#(length(mark(X))) p36: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p37: mark#(U13(X)) -> mark#(X) p38: mark#(isNatList(X)) -> active#(isNatList(X)) p39: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p40: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p41: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p42: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p43: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p44: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p45: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p46: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p47: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p48: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p49: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p50: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p51: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p52: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p53: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p54: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p55: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p56: mark#(U21(X1,X2)) -> mark#(X1) p57: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p58: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p59: mark#(U22(X1,X2)) -> mark#(X1) p60: mark#(U23(X)) -> mark#(X) p61: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p62: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p63: mark#(U32(X1,X2)) -> mark#(X1) p64: mark#(U33(X)) -> mark#(X) p65: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p66: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p67: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p68: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p69: mark#(U42(X1,X2,X3)) -> mark#(X1) p70: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p71: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p72: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p73: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p74: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p75: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p76: mark#(U45(X1,X2)) -> mark#(X1) p77: mark#(U46(X)) -> mark#(X) p78: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p79: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p80: mark#(U51(X1,X2)) -> mark#(X1) p81: mark#(U52(X)) -> mark#(X) p82: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p83: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p84: mark#(U62(X)) -> mark#(X) p85: mark#(U71(X)) -> mark#(X) p86: mark#(U81(X)) -> mark#(X) p87: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p88: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p89: mark#(U91(X1,X2,X3)) -> mark#(X1) p90: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p91: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p92: mark#(U92(X1,X2,X3)) -> mark#(X1) p93: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p94: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p95: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p96: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p97: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p98: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p99: mark#(U95(X1,X2)) -> mark#(X1) p100: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p101: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p102: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99, p100, p101, p102} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(take(s(M),cons(N,IL))) -> mark#(U131(isNatIList(IL),IL,M,N)) p5: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p6: active#(take(|0|(),IL)) -> mark#(U121(isNatIList(IL),IL)) p7: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p8: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p9: mark#(U92(X1,X2,X3)) -> mark#(X1) p10: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p11: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p12: mark#(U91(X1,X2,X3)) -> mark#(X1) p13: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p14: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p15: mark#(U81(X)) -> mark#(X) p16: mark#(U71(X)) -> mark#(X) p17: mark#(U62(X)) -> mark#(X) p18: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p19: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p20: mark#(U52(X)) -> mark#(X) p21: mark#(U51(X1,X2)) -> mark#(X1) p22: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p23: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p24: mark#(U46(X)) -> mark#(X) p25: mark#(U45(X1,X2)) -> mark#(X1) p26: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p27: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p28: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p29: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p30: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p31: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p32: mark#(U42(X1,X2,X3)) -> mark#(X1) p33: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p34: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p35: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p36: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p37: mark#(U33(X)) -> mark#(X) p38: mark#(U32(X1,X2)) -> mark#(X1) p39: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p40: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p41: mark#(U23(X)) -> mark#(X) p42: mark#(U22(X1,X2)) -> mark#(X1) p43: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p44: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p45: mark#(U21(X1,X2)) -> mark#(X1) p46: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p47: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p48: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p49: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p50: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p51: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p52: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p53: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p54: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p55: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p56: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p57: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p58: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p59: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p60: mark#(isNatList(X)) -> active#(isNatList(X)) p61: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p62: mark#(U13(X)) -> mark#(X) p63: mark#(length(X)) -> active#(length(mark(X))) p64: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p65: mark#(s(X)) -> mark#(X) p66: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p67: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p68: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p69: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p70: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p71: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p72: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p73: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p74: mark#(U12(X1,X2)) -> mark#(X1) p75: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p76: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p77: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p78: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p79: mark#(isNatIList(X)) -> active#(isNatIList(X)) p80: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p81: mark#(U106(X)) -> mark#(X) p82: mark#(isNat(X)) -> active#(isNat(X)) p83: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p84: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p85: active#(U121(tt(),IL)) -> mark#(U122(isNatIListKind(IL))) p86: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p87: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p88: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p89: active#(U114(tt(),L)) -> mark#(s(length(L))) p90: mark#(U103(X1,X2,X3)) -> mark#(X1) p91: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p92: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p93: mark#(isNatKind(X)) -> active#(isNatKind(X)) p94: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p95: mark#(U102(X1,X2,X3)) -> mark#(X1) p96: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p97: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p98: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p99: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p100: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p101: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p102: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = 0 U96_A(x1) = max{564, x1 - 10} U95_A(x1,x2) = 628 active#_A(x1) = max{0, x1 - 638} mark_A(x1) = max{497, x1} take_A(x1,x2) = max{703, x1 + 206, x2 + 114} s_A(x1) = max{638, x1 - 1} cons_A(x1,x2) = 602 U131_A(x1,x2,x3,x4) = 638 isNatIList_A(x1) = 629 U94_A(x1,x2,x3) = 637 |0|_A = 638 U121_A(x1,x2) = max{711, x1 + 147} U93_A(x1,x2,x3) = 638 length_A(x1) = 638 U111_A(x1,x2,x3) = 638 isNatList_A(x1) = 638 U92_A(x1,x2,x3) = 638 U101_A(x1,x2,x3) = 638 isNatKind_A(x1) = 634 U91_A(x1,x2,x3) = 638 U81_A(x1) = max{628, x1 - 67} U71_A(x1) = max{628, x1 - 1} U62_A(x1) = 628 U61_A(x1,x2) = 628 U52_A(x1) = 628 U51_A(x1,x2) = 628 isNatIListKind_A(x1) = 630 U46_A(x1) = 564 U45_A(x1,x2) = 564 U44_A(x1,x2,x3) = 628 U41_A(x1,x2,x3) = 629 U43_A(x1,x2,x3) = 628 isNat_A(x1) = 601 U21_A(x1,x2) = 589 U42_A(x1,x2,x3) = 629 tt_A = 564 U33_A(x1) = max{564, x1 - 205} U32_A(x1,x2) = 626 U23_A(x1) = 565 U22_A(x1,x2) = 577 U136_A(x1,x2,x3,x4) = 614 U135_A(x1,x2,x3,x4) = 626 U134_A(x1,x2,x3,x4) = 632 U133_A(x1,x2,x3,x4) = 638 U132_A(x1,x2,x3,x4) = 638 U13_A(x1) = max{565, x1 - 61} U114_A(x1,x2) = 638 U113_A(x1,x2,x3) = 638 U112_A(x1,x2,x3) = 638 U12_A(x1,x2) = 577 U11_A(x1,x2) = 601 U106_A(x1) = max{578, x1 - 64} U105_A(x1,x2) = 590 U122_A(x1) = 565 U104_A(x1,x2,x3) = 626 U103_A(x1,x2,x3) = 638 U102_A(x1,x2,x3) = max{638, x1 + 1} active_A(x1) = max{564, x1} zeros_A = 1020 nil_A = 565 U31_A(x1,x2) = max{626, x1 - 66} The next rules are strictly ordered: p4, p6, p85 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U95(X1,X2)) -> mark#(X1) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p5: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p6: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p7: mark#(U92(X1,X2,X3)) -> mark#(X1) p8: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p9: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p10: mark#(U91(X1,X2,X3)) -> mark#(X1) p11: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p12: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p13: mark#(U81(X)) -> mark#(X) p14: mark#(U71(X)) -> mark#(X) p15: mark#(U62(X)) -> mark#(X) p16: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p17: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p18: mark#(U52(X)) -> mark#(X) p19: mark#(U51(X1,X2)) -> mark#(X1) p20: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p21: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p22: mark#(U46(X)) -> mark#(X) p23: mark#(U45(X1,X2)) -> mark#(X1) p24: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p25: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p26: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p27: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p28: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p29: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p30: mark#(U42(X1,X2,X3)) -> mark#(X1) p31: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p32: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p33: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p34: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p35: mark#(U33(X)) -> mark#(X) p36: mark#(U32(X1,X2)) -> mark#(X1) p37: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p38: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p39: mark#(U23(X)) -> mark#(X) p40: mark#(U22(X1,X2)) -> mark#(X1) p41: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p42: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p43: mark#(U21(X1,X2)) -> mark#(X1) p44: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p45: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p46: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p47: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p48: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p49: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p50: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p51: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p52: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p53: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p54: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p55: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p56: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p57: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p58: mark#(isNatList(X)) -> active#(isNatList(X)) p59: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p60: mark#(U13(X)) -> mark#(X) p61: mark#(length(X)) -> active#(length(mark(X))) p62: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p63: mark#(s(X)) -> mark#(X) p64: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p65: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p66: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p67: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p68: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p69: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p70: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p71: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p72: mark#(U12(X1,X2)) -> mark#(X1) p73: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p74: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p75: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p76: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p77: mark#(isNatIList(X)) -> active#(isNatIList(X)) p78: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p79: mark#(U106(X)) -> mark#(X) p80: mark#(isNat(X)) -> active#(isNat(X)) p81: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p82: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p83: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p84: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p85: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p86: active#(U114(tt(),L)) -> mark#(s(length(L))) p87: mark#(U103(X1,X2,X3)) -> mark#(X1) p88: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p89: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p90: mark#(isNatKind(X)) -> active#(isNatKind(X)) p91: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p92: mark#(U102(X1,X2,X3)) -> mark#(X1) p93: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p94: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p95: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p96: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p97: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p98: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p99: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76, p77, p78, p79, p80, p81, p82, p83, p84, p85, p86, p87, p88, p89, p90, p91, p92, p93, p94, p95, p96, p97, p98, p99} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U96(X)) -> mark#(X) p2: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p3: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p4: mark#(U102(X1,X2,X3)) -> mark#(X1) p5: mark#(isNatKind(X)) -> active#(isNatKind(X)) p6: active#(U103(tt(),V1,V2)) -> mark#(U104(isNatIListKind(V2),V1,V2)) p7: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p8: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p9: mark#(U103(X1,X2,X3)) -> mark#(X1) p10: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p11: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p12: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p13: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p14: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p15: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p16: mark#(isNat(X)) -> active#(isNat(X)) p17: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p18: mark#(U106(X)) -> mark#(X) p19: mark#(isNatIList(X)) -> active#(isNatIList(X)) p20: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p21: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p22: active#(U114(tt(),L)) -> mark#(s(length(L))) p23: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p24: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p25: mark#(U12(X1,X2)) -> mark#(X1) p26: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p27: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p28: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p29: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p30: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p31: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p32: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p33: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p34: mark#(s(X)) -> mark#(X) p35: mark#(length(X)) -> active#(length(mark(X))) p36: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p37: mark#(U13(X)) -> mark#(X) p38: mark#(isNatList(X)) -> active#(isNatList(X)) p39: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p40: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p41: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p42: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p43: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p44: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p45: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p46: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p47: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p48: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p49: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p50: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p51: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p52: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p53: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p54: mark#(U21(X1,X2)) -> mark#(X1) p55: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p56: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p57: mark#(U22(X1,X2)) -> mark#(X1) p58: mark#(U23(X)) -> mark#(X) p59: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p60: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p61: mark#(U32(X1,X2)) -> mark#(X1) p62: mark#(U33(X)) -> mark#(X) p63: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p64: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p65: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p66: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p67: mark#(U42(X1,X2,X3)) -> mark#(X1) p68: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p69: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p70: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p71: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p72: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p73: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p74: mark#(U45(X1,X2)) -> mark#(X1) p75: mark#(U46(X)) -> mark#(X) p76: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p77: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p78: mark#(U51(X1,X2)) -> mark#(X1) p79: mark#(U52(X)) -> mark#(X) p80: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p81: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p82: mark#(U62(X)) -> mark#(X) p83: mark#(U71(X)) -> mark#(X) p84: mark#(U81(X)) -> mark#(X) p85: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p86: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p87: mark#(U91(X1,X2,X3)) -> mark#(X1) p88: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p89: active#(isNatIListKind(cons(V1,V2))) -> mark#(U51(isNatKind(V1),V2)) p90: mark#(U92(X1,X2,X3)) -> mark#(X1) p91: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p92: active#(isNatKind(length(V1))) -> mark#(U71(isNatIListKind(V1))) p93: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p94: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p95: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p96: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p97: mark#(U95(X1,X2)) -> mark#(X1) p98: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p99: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = x1 + 1 U96_A(x1) = max{68, x1 + 22} U101_A(x1,x2,x3) = max{270, x1 - 2, x2 + 25, x3 + 141} active#_A(x1) = max{23, x1 + 1} mark_A(x1) = max{26, x1} tt_A = 68 U102_A(x1,x2,x3) = max{x1 + 1, x2 + 25, x3 + 140} isNatKind_A(x1) = max{64, x1 + 21} U103_A(x1,x2,x3) = max{x1 + 26, x2 + 25, x3 + 140} U104_A(x1,x2,x3) = max{x1 - 65, x2 - 2, x3 + 139} isNatIListKind_A(x1) = max{86, x1 + 67} U105_A(x1,x2) = max{139, x2 + 138} isNat_A(x1) = max{33, x1 + 21} U106_A(x1) = max{138, x1 + 26} isNatIList_A(x1) = x1 + 112 U11_A(x1,x2) = max{113, x1 + 87, x2 + 93} U12_A(x1,x2) = max{x1 + 26, x2 + 93} U111_A(x1,x2,x3) = max{x1 + 136, x2 + 178} U112_A(x1,x2,x3) = max{204, x1 - 70, x2 + 178} U113_A(x1,x2,x3) = max{204, x2 + 178} U114_A(x1,x2) = max{204, x2 + 178} s_A(x1) = max{204, x1 + 26} length_A(x1) = max{178, x1 + 152} U13_A(x1) = max{94, x1 + 51} isNatList_A(x1) = x1 + 42 U131_A(x1,x2,x3,x4) = max{269, x1 + 45, x2 + 202, x3 + 228, x4 + 155} U132_A(x1,x2,x3,x4) = max{268, x1 + 26, x2 + 202, x3 + 228, x4 + 154} U133_A(x1,x2,x3,x4) = max{268, x1 + 60, x2 + 202, x3 + 228, x4 + 154} U134_A(x1,x2,x3,x4) = max{267, x1 + 63, x2 + 202, x3 + 228, x4 + 154} U135_A(x1,x2,x3,x4) = max{266, x2 + 202, x3 + 228, x4 + 153} U136_A(x1,x2,x3,x4) = max{265, x2 + 202, x3 + 228, x4 + 153} cons_A(x1,x2) = max{x1 - 21, x2 + 26} take_A(x1,x2) = max{228, x1 + 202, x2 + 176} U21_A(x1,x2) = max{x1 + 21, x2 + 47} U22_A(x1,x2) = max{x1 + 21, x2 + 47} U23_A(x1) = max{89, x1 + 26} U32_A(x1,x2) = max{x1 + 26, x2 + 69} U33_A(x1) = max{68, x1 + 27} U41_A(x1,x2,x3) = max{x1 + 26, x2 + 91, x3 + 138} U42_A(x1,x2,x3) = max{x1 + 26, x2 + 82, x3 + 138} U43_A(x1,x2,x3) = max{x1 + 52, x2 + 81, x3 + 138} U44_A(x1,x2,x3) = max{x1 - 6, x2 + 42, x3 + 138} U45_A(x1,x2) = max{x1 + 21, x2 + 138} U46_A(x1) = max{88, x1 + 26} U51_A(x1,x2) = max{x1 + 23, x2 + 92} U52_A(x1) = max{90, x1 + 6} U61_A(x1,x2) = max{x1 + 44, x2 + 112} U62_A(x1) = max{85, x1 + 26} U91_A(x1,x2,x3) = max{x1, x2 + 21, x3 + 68} U92_A(x1,x2,x3) = max{x1, x2 + 21, x3 + 68} U93_A(x1,x2,x3) = max{x2 + 21, x3 + 68} U94_A(x1,x2,x3) = max{x2 + 21, x3 + 64} U95_A(x1,x2) = max{x1, x2 + 64} U71_A(x1) = max{68, x1 + 26} U81_A(x1) = max{68, x1 + 26} active_A(x1) = max{26, x1} zeros_A = 0 |0|_A = 47 U121_A(x1,x2) = max{x1 + 44, x2 + 112} U122_A(x1) = max{52, x1 + 26} nil_A = 27 U31_A(x1,x2) = max{x1 + 25, x2 + 112} The next rules are strictly ordered: p1, p4, p6, p9, p18, p25, p34, p37, p54, p57, p58, p61, p62, p67, p74, p75, p78, p79, p82, p83, p84, p89, p92 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p2: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p3: mark#(isNatKind(X)) -> active#(isNatKind(X)) p4: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p5: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p6: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p7: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p8: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p9: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p10: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p11: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p12: mark#(isNat(X)) -> active#(isNat(X)) p13: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p14: mark#(isNatIList(X)) -> active#(isNatIList(X)) p15: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p16: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p17: active#(U114(tt(),L)) -> mark#(s(length(L))) p18: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p19: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p20: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p21: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p22: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p23: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p24: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p25: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p26: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p27: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p28: mark#(length(X)) -> active#(length(mark(X))) p29: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p30: mark#(isNatList(X)) -> active#(isNatList(X)) p31: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p32: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p33: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p34: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p35: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p36: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p37: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p38: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p39: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p40: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p41: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p42: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p43: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p44: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p45: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p46: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p47: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p48: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p49: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p50: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p51: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p52: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p53: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p54: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p55: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p56: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p57: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p58: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p59: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p60: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p61: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p62: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p63: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p64: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p65: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p66: mark#(U91(X1,X2,X3)) -> mark#(X1) p67: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p68: mark#(U92(X1,X2,X3)) -> mark#(X1) p69: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p70: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p71: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p72: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p73: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p74: mark#(U95(X1,X2)) -> mark#(X1) p75: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p76: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75, p76} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p2: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p3: mark#(U95(X1,X2)) -> mark#(X1) p4: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p5: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p6: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p7: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p8: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p9: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p10: mark#(U92(X1,X2,X3)) -> mark#(X1) p11: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p12: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p13: mark#(U91(X1,X2,X3)) -> mark#(X1) p14: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p15: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p16: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p17: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p18: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p19: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p20: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p21: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p22: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p23: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p24: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p25: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p26: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p27: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p28: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p29: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p30: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p31: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p32: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p33: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p34: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p35: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p36: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p37: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p38: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p39: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p40: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p41: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p42: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p43: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p44: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p45: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p46: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p47: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p48: mark#(isNatList(X)) -> active#(isNatList(X)) p49: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p50: mark#(length(X)) -> active#(length(mark(X))) p51: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p52: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p53: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p54: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p55: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p56: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p57: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p58: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p59: active#(U12(tt(),V1)) -> mark#(U13(isNatList(V1))) p60: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p61: active#(U114(tt(),L)) -> mark#(s(length(L))) p62: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p63: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p64: mark#(isNatIList(X)) -> active#(isNatIList(X)) p65: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p66: mark#(isNat(X)) -> active#(isNat(X)) p67: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p68: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p69: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p70: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p71: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p72: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p73: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p74: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p75: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p76: mark#(isNatKind(X)) -> active#(isNatKind(X)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = max{6, x1 + 1} U101_A(x1,x2,x3) = max{x1 + 528, x2 + 559, x3 + 559} active#_A(x1) = x1 + 1 mark_A(x1) = max{31, x1} length_A(x1) = max{203, x1 + 171} cons_A(x1,x2) = max{111, x1 + 80, x2 - 12} U111_A(x1,x2,x3) = max{x1 + 141, x2 + 159, x3 + 251} isNatList_A(x1) = x1 + 18 U95_A(x1,x2) = max{32, x1} take_A(x1,x2) = max{583, x1 + 552, x2 + 552} isNatKind_A(x1) = x1 + 42 U94_A(x1,x2,x3) = x2 + 98 U91_A(x1,x2,x3) = max{x1, x2 + 98} U93_A(x1,x2,x3) = x2 + 98 s_A(x1) = max{18, x1 - 12} U81_A(x1) = 60 U92_A(x1,x2,x3) = max{x1, x2 + 98} isNatIList_A(x1) = x1 + 321 U41_A(x1,x2,x3) = max{x1 + 56, x2 + 401, x3 + 309} isNat_A(x1) = x1 + 98 U21_A(x1,x2) = max{x1 + 44, x2 + 75} U61_A(x1,x2) = max{x1 + 10, x2 + 146} tt_A = 9 U96_A(x1) = 32 U51_A(x1,x2) = max{x1 + 17, x2 + 48} U45_A(x1,x2) = max{x1 + 89, x2 + 309} isNatIListKind_A(x1) = x1 + 129 U44_A(x1,x2,x3) = max{x1 + 179, x2 + 211, x3 + 309} U43_A(x1,x2,x3) = max{x1 + 78, x2 + 211, x3 + 309} U42_A(x1,x2,x3) = max{x1 + 67, x2 + 211, x3 + 309} U62_A(x1) = max{146, x1 + 16} U52_A(x1) = 48 U32_A(x1,x2) = max{x1 + 33, x2 + 64} U46_A(x1) = max{309, x1 - 13} U22_A(x1,x2) = max{x1 + 33, x2 + 64} U136_A(x1,x2,x3,x4) = max{x1 + 563, x2 + 540, x3 + 540, x4 + 594} U135_A(x1,x2,x3,x4) = max{x1 + 16, x2 + 540, x3 + 540, x4 + 606} U134_A(x1,x2,x3,x4) = max{x1 + 497, x2 + 540, x3 + 540, x4 + 606} U33_A(x1) = 64 U133_A(x1,x2,x3,x4) = max{x1 + 442, x2 + 540, x3 + 540, x4 + 606} U23_A(x1) = max{64, x1 - 64} U132_A(x1,x2,x3,x4) = max{x1 + 20, x2 + 540, x3 + 540, x4 + 606} U131_A(x1,x2,x3,x4) = max{x1 + 22, x2 + 540, x3 + 540, x4 + 607} U114_A(x1,x2) = max{240, x1 + 209, x2 + 159} U113_A(x1,x2,x3) = max{x1 + 60, x2 + 159, x3 + 251} U112_A(x1,x2,x3) = max{x1 + 29, x2 + 159, x3 + 251} U12_A(x1,x2) = max{x1 + 51, x2 + 82} U13_A(x1) = 32 U11_A(x1,x2) = max{x1 + 22, x2 + 180} U105_A(x1,x2) = max{438, x1 + 335, x2 + 343} U104_A(x1,x2,x3) = max{x1 + 430, x2 + 433, x3 + 461} U106_A(x1) = max{53, x1 + 22} U103_A(x1,x2,x3) = max{x1 + 401, x2 + 433, x3 + 559} U102_A(x1,x2,x3) = max{x1 + 507, x2 + 507, x3 + 559} active_A(x1) = max{17, x1} zeros_A = 265 |0|_A = 185 U121_A(x1,x2) = max{584, x2 + 552} U122_A(x1) = max{553, x1 + 423} nil_A = 13 U31_A(x1,x2) = max{x1 + 14, x2 + 162} U71_A(x1) = max{214, x1 + 16} The next rules are strictly ordered: p59 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p2: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p3: mark#(U95(X1,X2)) -> mark#(X1) p4: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p5: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p6: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p7: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p8: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p9: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p10: mark#(U92(X1,X2,X3)) -> mark#(X1) p11: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p12: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p13: mark#(U91(X1,X2,X3)) -> mark#(X1) p14: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p15: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p16: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p17: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p18: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p19: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p20: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p21: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p22: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p23: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p24: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p25: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p26: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p27: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p28: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p29: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p30: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p31: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p32: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p33: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p34: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p35: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p36: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p37: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p38: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p39: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p40: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p41: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p42: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p43: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p44: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p45: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p46: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p47: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p48: mark#(isNatList(X)) -> active#(isNatList(X)) p49: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p50: mark#(length(X)) -> active#(length(mark(X))) p51: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p52: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p53: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p54: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p55: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p56: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p57: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p58: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p59: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p60: active#(U114(tt(),L)) -> mark#(s(length(L))) p61: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p62: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p63: mark#(isNatIList(X)) -> active#(isNatIList(X)) p64: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p65: mark#(isNat(X)) -> active#(isNat(X)) p66: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p67: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p68: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p69: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p70: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p71: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p72: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p73: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p74: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p75: mark#(isNatKind(X)) -> active#(isNatKind(X)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50, p51, p52, p53, p54, p55, p56, p57, p58, p59, p60, p61, p62, p63, p64, p65, p66, p67, p68, p69, p70, p71, p72, p73, p74, p75} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p2: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p3: mark#(isNatKind(X)) -> active#(isNatKind(X)) p4: active#(U104(tt(),V1,V2)) -> mark#(U105(isNat(V1),V2)) p5: mark#(U103(X1,X2,X3)) -> active#(U103(mark(X1),X2,X3)) p6: active#(U105(tt(),V2)) -> mark#(U106(isNatIList(V2))) p7: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p8: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p9: mark#(U104(X1,X2,X3)) -> active#(U104(mark(X1),X2,X3)) p10: active#(U111(tt(),L,N)) -> mark#(U112(isNatIListKind(L),L,N)) p11: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p12: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p13: mark#(isNat(X)) -> active#(isNat(X)) p14: active#(U113(tt(),L,N)) -> mark#(U114(isNatKind(N),L)) p15: mark#(isNatIList(X)) -> active#(isNatIList(X)) p16: active#(U114(tt(),L)) -> mark#(s(length(L))) p17: mark#(U11(X1,X2)) -> active#(U11(mark(X1),X2)) p18: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p19: mark#(U12(X1,X2)) -> active#(U12(mark(X1),X2)) p20: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p21: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p22: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p23: mark#(U112(X1,X2,X3)) -> active#(U112(mark(X1),X2,X3)) p24: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p25: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p26: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p27: mark#(U114(X1,X2)) -> active#(U114(mark(X1),X2)) p28: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p29: mark#(length(X)) -> active#(length(mark(X))) p30: active#(U21(tt(),V1)) -> mark#(U22(isNatKind(V1),V1)) p31: mark#(isNatList(X)) -> active#(isNatList(X)) p32: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p33: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p34: active#(U32(tt(),V)) -> mark#(U33(isNatList(V))) p35: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p36: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p37: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p38: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p39: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p40: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p41: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p42: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p43: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p44: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p45: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p46: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p47: mark#(U22(X1,X2)) -> active#(U22(mark(X1),X2)) p48: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p49: mark#(U32(X1,X2)) -> active#(U32(mark(X1),X2)) p50: active#(U91(tt(),V1,V2)) -> mark#(U92(isNatKind(V1),V1,V2)) p51: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p52: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p53: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p54: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p55: mark#(U43(X1,X2,X3)) -> active#(U43(mark(X1),X2,X3)) p56: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p57: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p58: active#(U95(tt(),V2)) -> mark#(U96(isNatList(V2))) p59: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p60: active#(isNat(s(V1))) -> mark#(U21(isNatKind(V1),V1)) p61: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p62: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p63: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p64: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p65: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p66: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p67: mark#(U91(X1,X2,X3)) -> mark#(X1) p68: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p69: active#(isNatList(take(V1,V2))) -> mark#(U101(isNatKind(V1),V1,V2)) p70: mark#(U92(X1,X2,X3)) -> mark#(X1) p71: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p72: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p73: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p74: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p75: mark#(U95(X1,X2)) -> mark#(X1) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = max{0, x1 - 237} U101_A(x1,x2,x3) = x1 + 673 active#_A(x1) = max{0, x1 - 245} mark_A(x1) = x1 + 8 tt_A = 56 U102_A(x1,x2,x3) = max{648, x1 + 593} isNatKind_A(x1) = 128 U104_A(x1,x2,x3) = 633 U105_A(x1,x2) = x1 + 239 isNat_A(x1) = 384 U103_A(x1,x2,x3) = 641 U106_A(x1) = 238 isNatIList_A(x1) = max{1063, x1 - 9} isNatIListKind_A(x1) = x1 + 208 U11_A(x1,x2) = 254 U12_A(x1,x2) = 246 U111_A(x1,x2,x3) = max{638, x1 + 584} U112_A(x1,x2,x3) = 631 U113_A(x1,x2,x3) = max{246, x1 + 239} U114_A(x1,x2) = 245 s_A(x1) = 79 length_A(x1) = max{1412, x1 + 1404} U131_A(x1,x2,x3,x4) = 27 U132_A(x1,x2,x3,x4) = 27 U133_A(x1,x2,x3,x4) = 27 U134_A(x1,x2,x3,x4) = 27 U135_A(x1,x2,x3,x4) = 27 U136_A(x1,x2,x3,x4) = max{27, x1 - 108} cons_A(x1,x2) = max{27, x2 - 3} take_A(x1,x2) = 30 U21_A(x1,x2) = x1 + 247 U22_A(x1,x2) = 238 isNatList_A(x1) = x1 + 809 U23_A(x1) = 217 U32_A(x1,x2) = 1047 U33_A(x1) = 238 U41_A(x1,x2,x3) = max{x1 + 927, x3 - 21} U42_A(x1,x2,x3) = max{975, x1 - 49, x3 - 49} U43_A(x1,x2,x3) = max{967, x3 - 57} U44_A(x1,x2,x3) = max{255, x1 - 273, x3 - 217} U45_A(x1,x2) = max{246, x1 - 610, x2 - 225} U46_A(x1) = 238 U51_A(x1,x2) = max{204, x1 - 494, x2 + 197} U52_A(x1) = max{188, x1 - 20} U61_A(x1,x2) = x1 + 56 U62_A(x1) = 103 U91_A(x1,x2,x3) = max{x1 + 108, x3 + 798} U92_A(x1,x2,x3) = max{x1 + 27, x3 + 642} U93_A(x1,x2,x3) = max{x1 + 172, x3 + 634} U94_A(x1,x2,x3) = max{421, x1 + 418, x3 + 419} U95_A(x1,x2) = max{418, x1 + 26, x2 + 411} U96_A(x1) = 73 U81_A(x1) = 119 active_A(x1) = max{35, x1} zeros_A = 30 |0|_A = 28 U13_A(x1) = 177 U121_A(x1,x2) = 27 U122_A(x1) = 27 nil_A = 27 U31_A(x1,x2) = 1055 U71_A(x1) = 64 The next rules are strictly ordered: p4, p5, p6, p9, p10, p13, p14, p15, p17, p19, p23, p27, p30, p31, p34, p47, p49, p50, p55, p58, p60, p67, p69, p70, p75 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p2: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p3: mark#(isNatKind(X)) -> active#(isNatKind(X)) p4: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p5: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p6: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p7: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p8: active#(U114(tt(),L)) -> mark#(s(length(L))) p9: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p10: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p11: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p12: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p13: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p14: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p15: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p16: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p17: mark#(length(X)) -> active#(length(mark(X))) p18: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p19: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p20: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p21: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p22: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p23: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p24: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p25: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p26: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p27: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p28: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p29: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p30: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p31: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p32: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p33: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p34: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p35: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p36: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p37: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p38: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p39: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p40: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p41: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p42: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p43: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p44: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p45: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p46: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p47: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p48: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p49: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p50: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28, p29, p30, p31, p32, p33, p34, p35, p36, p37, p38, p39, p40, p41, p42, p43, p44, p45, p46, p47, p48, p49, p50} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U101(X1,X2,X3)) -> active#(U101(mark(X1),X2,X3)) p2: active#(length(cons(N,L))) -> mark#(U111(isNatList(L),L,N)) p3: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p4: active#(isNatList(cons(V1,V2))) -> mark#(U91(isNatKind(V1),V1,V2)) p5: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p6: active#(isNatKind(s(V1))) -> mark#(U81(isNatKind(V1))) p7: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p8: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p9: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p10: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p11: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p12: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p13: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p14: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p15: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p16: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p17: mark#(U45(X1,X2)) -> active#(U45(mark(X1),X2)) p18: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p19: mark#(U44(X1,X2,X3)) -> active#(U44(mark(X1),X2,X3)) p20: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p21: mark#(U42(X1,X2,X3)) -> active#(U42(mark(X1),X2,X3)) p22: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p23: mark#(U41(X1,X2,X3)) -> active#(U41(mark(X1),X2,X3)) p24: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p25: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p26: active#(U42(tt(),V1,V2)) -> mark#(U43(isNatIListKind(V2),V1,V2)) p27: mark#(U136(X1,X2,X3,X4)) -> active#(U136(mark(X1),X2,X3,X4)) p28: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p29: mark#(U135(X1,X2,X3,X4)) -> active#(U135(mark(X1),X2,X3,X4)) p30: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p31: mark#(U134(X1,X2,X3,X4)) -> active#(U134(mark(X1),X2,X3,X4)) p32: active#(U136(tt(),IL,M,N)) -> mark#(cons(N,take(M,IL))) p33: mark#(U133(X1,X2,X3,X4)) -> active#(U133(mark(X1),X2,X3,X4)) p34: active#(U135(tt(),IL,M,N)) -> mark#(U136(isNatKind(N),IL,M,N)) p35: mark#(U132(X1,X2,X3,X4)) -> active#(U132(mark(X1),X2,X3,X4)) p36: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p37: mark#(U131(X1,X2,X3,X4)) -> active#(U131(mark(X1),X2,X3,X4)) p38: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p39: mark#(length(X)) -> active#(length(mark(X))) p40: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p41: mark#(U113(X1,X2,X3)) -> active#(U113(mark(X1),X2,X3)) p42: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p43: mark#(U111(X1,X2,X3)) -> active#(U111(mark(X1),X2,X3)) p44: active#(U114(tt(),L)) -> mark#(s(length(L))) p45: mark#(U105(X1,X2)) -> active#(U105(mark(X1),X2)) p46: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p47: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p48: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p49: mark#(isNatKind(X)) -> active#(isNatKind(X)) p50: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = max{0, x1 - 13} U101_A(x1,x2,x3) = max{3940, x1 + 3891, x2 + 3841} active#_A(x1) = max{0, x1 - 67} mark_A(x1) = x1 + 49 length_A(x1) = 342 cons_A(x1,x2) = max{729, x2 - 2309} U111_A(x1,x2,x3) = 287 isNatList_A(x1) = max{3989, x1 + 2377} U95_A(x1,x2) = max{11, x1 - 107} U91_A(x1,x2,x3) = max{13, x3 - 2880} isNatKind_A(x1) = x1 + 649 U94_A(x1,x2,x3) = 11 s_A(x1) = max{80, x1 - 330} U81_A(x1) = 270 U93_A(x1,x2,x3) = 11 isNatIList_A(x1) = x1 + 2998 U41_A(x1,x2,x3) = x3 + 635 U92_A(x1,x2,x3) = 11 tt_A = 11 isNat_A(x1) = 118 isNatIListKind_A(x1) = 11 U61_A(x1,x2) = 11 U51_A(x1,x2) = 11 U62_A(x1) = 11 U45_A(x1,x2) = max{411, x1 + 62, x2 + 10} U52_A(x1) = 11 U44_A(x1,x2,x3) = max{465, x1 + 416, x3 + 64} U46_A(x1) = 357 U42_A(x1,x2,x3) = x3 + 581 U43_A(x1,x2,x3) = max{x1 + 508, x3 + 482} U21_A(x1,x2) = 12 U136_A(x1,x2,x3,x4) = max{817, x3 - 42} U135_A(x1,x2,x3,x4) = max{872, x1 + 57, x3 + 13} U22_A(x1,x2) = 11 U23_A(x1) = max{11, x1 - 162} U134_A(x1,x2,x3,x4) = max{926, x1 + 219, x3 + 67} take_A(x1,x2) = x1 + 2212 U133_A(x1,x2,x3,x4) = max{x1 + 969, x3 + 923} U132_A(x1,x2,x3,x4) = max{x1 + 1130, x3 + 1141} U131_A(x1,x2,x3,x4) = x3 + 1195 U113_A(x1,x2,x3) = max{184, x1 + 64} U114_A(x1,x2) = 134 U105_A(x1,x2) = x1 + 159 U112_A(x1,x2,x3) = max{238, x1 + 226} U11_A(x1,x2) = max{68, x1 + 58} U12_A(x1,x2) = 15 U102_A(x1,x2,x3) = x1 + 3138 active_A(x1) = max{60, x1} zeros_A = 2321 |0|_A = 293 U103_A(x1,x2,x3) = max{375, x1 + 364} U104_A(x1,x2,x3) = max{326, x1 + 315} U106_A(x1) = 60 U13_A(x1) = 11 U121_A(x1,x2) = 110 U122_A(x1) = 61 nil_A = 12 U31_A(x1,x2) = 157 U32_A(x1,x2) = 108 U33_A(x1) = 59 U71_A(x1) = max{60, x1 + 49} U96_A(x1) = 11 The next rules are strictly ordered: p1, p2, p4, p6, p17, p19, p21, p23, p26, p27, p29, p31, p32, p33, p34, p35, p37, p39, p41, p43, p45, p49 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p2: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p3: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p4: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p5: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p6: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p7: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p8: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p9: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p10: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p11: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p12: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p13: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p14: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p15: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p16: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p17: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p18: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p19: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p20: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p21: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p22: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p23: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p24: active#(U114(tt(),L)) -> mark#(s(length(L))) p25: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p26: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p27: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p28: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, p28} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p2: active#(U101(tt(),V1,V2)) -> mark#(U102(isNatKind(V1),V1,V2)) p3: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p4: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p5: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p6: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p7: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p8: active#(U114(tt(),L)) -> mark#(s(length(L))) p9: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p10: active#(U131(tt(),IL,M,N)) -> mark#(U132(isNatIListKind(IL),IL,M,N)) p11: mark#(U91(X1,X2,X3)) -> active#(U91(mark(X1),X2,X3)) p12: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p13: mark#(U92(X1,X2,X3)) -> active#(U92(mark(X1),X2,X3)) p14: active#(U133(tt(),IL,M,N)) -> mark#(U134(isNatKind(M),IL,M,N)) p15: mark#(U93(X1,X2,X3)) -> active#(U93(mark(X1),X2,X3)) p16: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p17: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p18: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p19: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p20: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p21: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p22: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p23: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p24: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p25: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p26: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p27: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p28: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = max{0, x1 - 1279} U95_A(x1,x2) = 1232 active#_A(x1) = max{0, x1 - 1344} mark_A(x1) = max{63, x1 + 47} U101_A(x1,x2,x3) = max{3609, x1 + 3466} tt_A = 103 U102_A(x1,x2,x3) = max{3543, x1 - 3908} isNatKind_A(x1) = 143 isNatIListKind_A(x1) = x1 + 1279 U11_A(x1,x2) = 103 U12_A(x1,x2) = 103 U21_A(x1,x2) = 103 U112_A(x1,x2,x3) = max{x1 + 102, x2 + 1345} U113_A(x1,x2,x3) = max{x1 + 49, x2 + 1280} isNat_A(x1) = 145 U51_A(x1,x2) = 103 U114_A(x1,x2) = 149 s_A(x1) = 103 length_A(x1) = max{2755, x1 + 2739} U61_A(x1,x2) = 103 U131_A(x1,x2,x3,x4) = 1540 U132_A(x1,x2,x3,x4) = 1474 U91_A(x1,x2,x3) = max{x1 - 2639, x3 + 1488} U133_A(x1,x2,x3,x4) = max{1409, x1 + 1263} U92_A(x1,x2,x3) = max{x1 + 1298, x3 + 1401} U134_A(x1,x2,x3,x4) = 1343 U93_A(x1,x2,x3) = 1336 U135_A(x1,x2,x3,x4) = 1147 U94_A(x1,x2,x3) = 1279 U22_A(x1,x2) = 103 U23_A(x1) = 103 U41_A(x1,x2,x3) = max{292, x1 + 60, x3 + 274} U42_A(x1,x2,x3) = max{x1 + 102, x3 + 204} U43_A(x1,x2,x3) = max{158, x3 + 157} U44_A(x1,x2,x3) = max{110, x1 - 1188} U45_A(x1,x2) = max{103, x1 - 1277} U46_A(x1) = 103 isNatIList_A(x1) = max{1344, x1 + 873} U52_A(x1) = 103 U62_A(x1) = 103 cons_A(x1,x2) = max{471, x2 - 534} active_A(x1) = max{150, x1} zeros_A = 638 |0|_A = 4052 U103_A(x1,x2,x3) = 106 U104_A(x1,x2,x3) = 103 U105_A(x1,x2) = 103 U106_A(x1) = 103 U111_A(x1,x2,x3) = max{x1 + 89, x2 + 1428} U13_A(x1) = 103 isNatList_A(x1) = x1 + 2069 U121_A(x1,x2) = 1540 U122_A(x1) = 1407 nil_A = 1360 U136_A(x1,x2,x3,x4) = max{1100, x1 + 102} take_A(x1,x2) = 1587 U31_A(x1,x2) = max{x1 - 453, x2 + 826} U32_A(x1,x2) = x2 + 197 U33_A(x1) = 150 U71_A(x1) = 103 U81_A(x1) = max{103, x1 - 40} U96_A(x1) = 104 The next rules are strictly ordered: p2, p10, p11, p13, p14, p15 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p2: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p3: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) p4: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p5: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p6: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p7: active#(U114(tt(),L)) -> mark#(s(length(L))) p8: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p9: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p10: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p11: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p12: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p13: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p14: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p15: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p16: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p17: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p18: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p19: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p20: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p21: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p22: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: mark#(U95(X1,X2)) -> active#(U95(mark(X1),X2)) p2: active#(isNatIList(cons(V1,V2))) -> mark#(U41(isNatKind(V1),V1,V2)) p3: mark#(U94(X1,X2,X3)) -> active#(U94(mark(X1),X2,X3)) p4: active#(U94(tt(),V1,V2)) -> mark#(U95(isNat(V1),V2)) p5: mark#(U61(X1,X2)) -> active#(U61(mark(X1),X2)) p6: active#(U93(tt(),V1,V2)) -> mark#(U94(isNatIListKind(V2),V1,V2)) p7: mark#(U51(X1,X2)) -> active#(U51(mark(X1),X2)) p8: active#(U92(tt(),V1,V2)) -> mark#(U93(isNatIListKind(V2),V1,V2)) p9: mark#(U21(X1,X2)) -> active#(U21(mark(X1),X2)) p10: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p11: mark#(isNatIListKind(X)) -> active#(isNatIListKind(X)) p12: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p13: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p14: active#(U44(tt(),V1,V2)) -> mark#(U45(isNat(V1),V2)) p15: active#(U43(tt(),V1,V2)) -> mark#(U44(isNatIListKind(V2),V1,V2)) p16: active#(U41(tt(),V1,V2)) -> mark#(U42(isNatKind(V1),V1,V2)) p17: active#(U22(tt(),V1)) -> mark#(U23(isNat(V1))) p18: active#(U134(tt(),IL,M,N)) -> mark#(U135(isNat(N),IL,M,N)) p19: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p20: active#(U114(tt(),L)) -> mark#(s(length(L))) p21: active#(U112(tt(),L,N)) -> mark#(U113(isNat(N),L,N)) p22: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43, r44, r45, r46, r47, r48, r49, r50, r51, r52, r53, r54, r55, r56, r57, r58, r59, r60, r61, r62, r63, r64, r65, r66, r67, r68, r69, r70, r71, r72, r73, r74, r75, r76, r77, r78, r79, r80, r81, r82, r83, r84, r85, r86, r87, r88, r89, r90, r91, r92, r93, r94, r95, r96, r97, r98, r99, r100, r101, r102, r103, r104, r105, r106, r107, r108, r109, r110, r111, r112, r113, r114, r115, r116, r117, r118, r119, r120, r121, r122, r123, r124, r125, r126, r127, r128, r129, r130, r131, r132, r133, r134, r135, r136, r137, r138, r139, r140, r141, r142, r143, r144, r145, r146, r147, r148, r149, r150, r151, r152, r153, r154, r155, r156, r157, r158, r159, r160, r161, r162, r163, r164, r165, r166, r167, r168, r169, r170, r171, r172, r173, r174, r175, r176, r177, r178, r179, r180, r181, r182, r183, r184, r185, r186, r187, r188, r189, r190, r191, r192, r193, r194, r195, r196, r197, r198, r199, r200, r201, r202, r203, r204, r205, r206, r207, r208, r209, r210, r211, r212, r213, r214, r215, r216, r217, r218, r219, r220, r221, r222, r223, r224, r225, r226, r227, r228, r229, r230, r231, r232, r233, r234, r235, r236, r237, r238, r239, r240, r241, r242, r243, r244, r245, r246, r247, r248, r249, r250, r251, r252, r253, r254, r255, r256, r257, r258, r259, r260, r261, r262, r263, r264, r265, r266, r267, r268, r269, r270, r271, r272, r273, r274, r275, r276, r277, r278, r279, r280, r281, r282, r283, r284, r285, r286, r287, r288, r289, r290, r291, r292, r293, r294, r295, r296, r297, r298, r299, r300, r301, r302, r303, r304, r305, r306, r307, r308, r309, r310, r311, r312, r313, r314, r315, r316, r317, r318, r319, r320, r321, r322, r323, r324, r325, r326, r327, r328, r329, r330, r331, r332, r333, r334, r335, r336, r337, r338, r339, r340, r341, r342, r343, r344, r345, r346, r347, r348, r349, r350, r351, r352, r353, r354, r355, r356, r357, r358 Take the reduction pair: max/plus interpretations on natural numbers: mark#_A(x1) = x1 + 4559 U95_A(x1,x2) = x2 + 318 active#_A(x1) = max{4564, x1 + 4535} mark_A(x1) = max{46, x1 + 39} isNatIList_A(x1) = max{1500, x1 + 1460} cons_A(x1,x2) = max{7, x2 - 244} U41_A(x1,x2,x3) = max{1178, x1 + 1087, x3 + 1078} isNatKind_A(x1) = 90 U94_A(x1,x2,x3) = x3 + 359 tt_A = 7 isNat_A(x1) = 17 U61_A(x1,x2) = 6 U93_A(x1,x2,x3) = max{x1 - 33, x3 + 659} isNatIListKind_A(x1) = x1 + 314 U51_A(x1,x2) = x2 + 31 U92_A(x1,x2,x3) = max{x1 + 26, x3 + 698} U21_A(x1,x2) = 6 U62_A(x1) = 5 U52_A(x1) = 7 U45_A(x1,x2) = max{7, x1 - 9, x2 - 2} U46_A(x1) = 5 U44_A(x1,x2,x3) = max{77, x1 + 38, x3 + 37} U43_A(x1,x2,x3) = max{x1 + 108, x3 + 391} U42_A(x1,x2,x3) = max{1055, x3 + 1015} U22_A(x1,x2) = max{7, x1 - 83} U23_A(x1) = 4 U134_A(x1,x2,x3,x4) = max{7, x1 - 3803} U135_A(x1,x2,x3,x4) = max{0, x1 - 4999} U132_A(x1,x2,x3,x4) = 30 U133_A(x1,x2,x3,x4) = max{6, x1 - 3681} U114_A(x1,x2) = max{x1 + 1130, x2 + 1137} s_A(x1) = max{1098, x1 - 2585} length_A(x1) = max{2605, x1 + 1620} U112_A(x1,x2,x3) = max{x1 + 126, x2 + 1298} U113_A(x1,x2,x3) = max{x1 + 77, x2 + 1259} U11_A(x1,x2) = 7 U12_A(x1,x2) = 5 active_A(x1) = max{46, x1} zeros_A = 0 |0|_A = 2566 U101_A(x1,x2,x3) = max{714, x1 + 675} U102_A(x1,x2,x3) = max{624, x1 + 585} U103_A(x1,x2,x3) = 45 U104_A(x1,x2,x3) = 7 U105_A(x1,x2) = 6 U106_A(x1) = 6 U111_A(x1,x2,x3) = max{x1 + 151, x2 + 1337} U13_A(x1) = 7 isNatList_A(x1) = x1 + 1020 U121_A(x1,x2) = 90 U122_A(x1) = 47 nil_A = 0 U131_A(x1,x2,x3,x4) = 83 U136_A(x1,x2,x3,x4) = max{6, x1 - 83} take_A(x1,x2) = 129 U31_A(x1,x2) = max{1146, x1 + 1107, x2 + 1106} U32_A(x1,x2) = max{x1 + 317, x2 + 1067} U33_A(x1) = max{47, x1 + 8} U71_A(x1) = 47 U81_A(x1) = 51 U91_A(x1,x2,x3) = max{x1 + 148, x3 + 737} U96_A(x1) = 8 The next rules are strictly ordered: p1, p2, p3, p4, p5, p6, p7, p8, p9, p11, p14, p15, p16, p17, p18, p20, p21 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: active#(U61(tt(),V2)) -> mark#(U62(isNatIListKind(V2))) p2: active#(U51(tt(),V2)) -> mark#(U52(isNatIListKind(V2))) p3: active#(U45(tt(),V2)) -> mark#(U46(isNatIList(V2))) p4: active#(U132(tt(),IL,M,N)) -> mark#(U133(isNat(M),IL,M,N)) p5: active#(U11(tt(),V1)) -> mark#(U12(isNatIListKind(V1),V1)) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: (no SCCs) -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,X2,active(X3)) -> U102#(X1,X2,X3) p3: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) p4: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) p5: U102#(X1,X2,mark(X3)) -> U102#(X1,X2,X3) p6: U102#(X1,mark(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,X2,active(X3)) -> U102#(X1,X2,X3) p3: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) p4: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) p5: U102#(X1,mark(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,mark(X2),X3) -> U102#(X1,X2,X3) p3: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) p4: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) p5: U102#(X1,X2,active(X3)) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,mark(X2),X3) -> U102#(X1,X2,X3) p3: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) p4: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) p3: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) p4: U102#(X1,mark(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) p3: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(active(X1),X2,X3) -> U102#(X1,X2,X3) p3: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U102#(mark(X1),X2,X3) -> U102#(X1,X2,X3) p2: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U102#(X1,active(X2),X3) -> U102#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U102#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatKind#(mark(X)) -> isNatKind#(X) p2: isNatKind#(active(X)) -> isNatKind#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: isNatKind#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: isNatKind#(mark(X)) -> isNatKind#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatKind#(mark(X)) -> isNatKind#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: isNatKind#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,X2,active(X3)) -> U103#(X1,X2,X3) p3: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) p4: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) p5: U103#(X1,X2,mark(X3)) -> U103#(X1,X2,X3) p6: U103#(X1,mark(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,X2,active(X3)) -> U103#(X1,X2,X3) p3: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) p4: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) p5: U103#(X1,mark(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,mark(X2),X3) -> U103#(X1,X2,X3) p3: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) p4: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) p5: U103#(X1,X2,active(X3)) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,mark(X2),X3) -> U103#(X1,X2,X3) p3: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) p4: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) p3: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) p4: U103#(X1,mark(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) p3: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(active(X1),X2,X3) -> U103#(X1,X2,X3) p3: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U103#(mark(X1),X2,X3) -> U103#(X1,X2,X3) p2: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U103#(X1,active(X2),X3) -> U103#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U103#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatIListKind#(mark(X)) -> isNatIListKind#(X) p2: isNatIListKind#(active(X)) -> isNatIListKind#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: isNatIListKind#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: isNatIListKind#(mark(X)) -> isNatIListKind#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatIListKind#(mark(X)) -> isNatIListKind#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: isNatIListKind#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,X2,active(X3)) -> U104#(X1,X2,X3) p3: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) p4: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) p5: U104#(X1,X2,mark(X3)) -> U104#(X1,X2,X3) p6: U104#(X1,mark(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,X2,active(X3)) -> U104#(X1,X2,X3) p3: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) p4: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) p5: U104#(X1,mark(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,mark(X2),X3) -> U104#(X1,X2,X3) p3: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) p4: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) p5: U104#(X1,X2,active(X3)) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,mark(X2),X3) -> U104#(X1,X2,X3) p3: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) p4: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) p3: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) p4: U104#(X1,mark(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) p3: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(active(X1),X2,X3) -> U104#(X1,X2,X3) p3: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U104#(mark(X1),X2,X3) -> U104#(X1,X2,X3) p2: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U104#(X1,active(X2),X3) -> U104#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U104#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U105#(mark(X1),X2) -> U105#(X1,X2) p2: U105#(X1,active(X2)) -> U105#(X1,X2) p3: U105#(active(X1),X2) -> U105#(X1,X2) p4: U105#(X1,mark(X2)) -> U105#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U105#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U105#(mark(X1),X2) -> U105#(X1,X2) p2: U105#(X1,active(X2)) -> U105#(X1,X2) p3: U105#(active(X1),X2) -> U105#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U105#(mark(X1),X2) -> U105#(X1,X2) p2: U105#(active(X1),X2) -> U105#(X1,X2) p3: U105#(X1,active(X2)) -> U105#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U105#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U105#(mark(X1),X2) -> U105#(X1,X2) p2: U105#(active(X1),X2) -> U105#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U105#(mark(X1),X2) -> U105#(X1,X2) p2: U105#(active(X1),X2) -> U105#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U105#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U105#(mark(X1),X2) -> U105#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U105#(mark(X1),X2) -> U105#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U105#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNat#(mark(X)) -> isNat#(X) p2: isNat#(active(X)) -> isNat#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: isNat#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: isNat#(mark(X)) -> isNat#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNat#(mark(X)) -> isNat#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: isNat#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U106#(mark(X)) -> U106#(X) p2: U106#(active(X)) -> U106#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U106#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U106#(mark(X)) -> U106#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U106#(mark(X)) -> U106#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U106#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatIList#(mark(X)) -> isNatIList#(X) p2: isNatIList#(active(X)) -> isNatIList#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: isNatIList#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: isNatIList#(mark(X)) -> isNatIList#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatIList#(mark(X)) -> isNatIList#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: isNatIList#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U12#(mark(X1),X2) -> U12#(X1,X2) p2: U12#(X1,active(X2)) -> U12#(X1,X2) p3: U12#(active(X1),X2) -> U12#(X1,X2) p4: U12#(X1,mark(X2)) -> U12#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U12#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U12#(mark(X1),X2) -> U12#(X1,X2) p2: U12#(X1,active(X2)) -> U12#(X1,X2) p3: U12#(active(X1),X2) -> U12#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U12#(mark(X1),X2) -> U12#(X1,X2) p2: U12#(active(X1),X2) -> U12#(X1,X2) p3: U12#(X1,active(X2)) -> U12#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U12#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U12#(mark(X1),X2) -> U12#(X1,X2) p2: U12#(active(X1),X2) -> U12#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U12#(mark(X1),X2) -> U12#(X1,X2) p2: U12#(active(X1),X2) -> U12#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U12#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U12#(mark(X1),X2) -> U12#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U12#(mark(X1),X2) -> U12#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U12#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,X2,active(X3)) -> U112#(X1,X2,X3) p3: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) p4: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) p5: U112#(X1,X2,mark(X3)) -> U112#(X1,X2,X3) p6: U112#(X1,mark(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,X2,active(X3)) -> U112#(X1,X2,X3) p3: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) p4: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) p5: U112#(X1,mark(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,mark(X2),X3) -> U112#(X1,X2,X3) p3: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) p4: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) p5: U112#(X1,X2,active(X3)) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,mark(X2),X3) -> U112#(X1,X2,X3) p3: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) p4: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) p3: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) p4: U112#(X1,mark(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) p3: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(active(X1),X2,X3) -> U112#(X1,X2,X3) p3: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U112#(mark(X1),X2,X3) -> U112#(X1,X2,X3) p2: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U112#(X1,active(X2),X3) -> U112#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U112#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,X2,active(X3)) -> U113#(X1,X2,X3) p3: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) p4: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) p5: U113#(X1,X2,mark(X3)) -> U113#(X1,X2,X3) p6: U113#(X1,mark(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,X2,active(X3)) -> U113#(X1,X2,X3) p3: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) p4: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) p5: U113#(X1,mark(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,mark(X2),X3) -> U113#(X1,X2,X3) p3: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) p4: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) p5: U113#(X1,X2,active(X3)) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,mark(X2),X3) -> U113#(X1,X2,X3) p3: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) p4: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) p3: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) p4: U113#(X1,mark(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) p3: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(active(X1),X2,X3) -> U113#(X1,X2,X3) p3: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U113#(mark(X1),X2,X3) -> U113#(X1,X2,X3) p2: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U113#(X1,active(X2),X3) -> U113#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U113#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U114#(mark(X1),X2) -> U114#(X1,X2) p2: U114#(X1,active(X2)) -> U114#(X1,X2) p3: U114#(active(X1),X2) -> U114#(X1,X2) p4: U114#(X1,mark(X2)) -> U114#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U114#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U114#(mark(X1),X2) -> U114#(X1,X2) p2: U114#(X1,active(X2)) -> U114#(X1,X2) p3: U114#(active(X1),X2) -> U114#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U114#(mark(X1),X2) -> U114#(X1,X2) p2: U114#(active(X1),X2) -> U114#(X1,X2) p3: U114#(X1,active(X2)) -> U114#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U114#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U114#(mark(X1),X2) -> U114#(X1,X2) p2: U114#(active(X1),X2) -> U114#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U114#(mark(X1),X2) -> U114#(X1,X2) p2: U114#(active(X1),X2) -> U114#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U114#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U114#(mark(X1),X2) -> U114#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U114#(mark(X1),X2) -> U114#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U114#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: s#(mark(X)) -> s#(X) p2: s#(active(X)) -> s#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: s#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: s#(mark(X)) -> s#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: s#(mark(X)) -> s#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: s#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: length#(mark(X)) -> length#(X) p2: length#(active(X)) -> length#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: length#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: length#(mark(X)) -> length#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: length#(mark(X)) -> length#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: length#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U13#(mark(X)) -> U13#(X) p2: U13#(active(X)) -> U13#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U13#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U13#(mark(X)) -> U13#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U13#(mark(X)) -> U13#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U13#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatList#(mark(X)) -> isNatList#(X) p2: isNatList#(active(X)) -> isNatList#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: isNatList#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: isNatList#(mark(X)) -> isNatList#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: isNatList#(mark(X)) -> isNatList#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: isNatList#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U122#(mark(X)) -> U122#(X) p2: U122#(active(X)) -> U122#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U122#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U122#(mark(X)) -> U122#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U122#(mark(X)) -> U122#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U122#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(mark(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p5: U132#(active(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p6: U132#(X1,X2,X3,mark(X4)) -> U132#(X1,X2,X3,X4) p7: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p8: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = max{0, x4 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(mark(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p5: U132#(active(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p6: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p7: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(mark(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p4: U132#(active(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p5: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p6: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p7: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(mark(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p5: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p6: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(mark(X1),X2,X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p5: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p6: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p5: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,X2,X3,active(X4)) -> U132#(X1,X2,X3,X4) p2: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p5: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x4 active_A(x1) = x1 + 1 mark_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p4: U132#(X1,X2,mark(X3),X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = max{0, x3 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,active(X2),X3,X4) -> U132#(X1,X2,X3,X4) p3: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x2 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) p2: U132#(X1,X2,active(X3),X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x3 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U132#(X1,mark(X2),X3,X4) -> U132#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U132#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p5: U133#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p6: U133#(X1,X2,X3,mark(X4)) -> U133#(X1,X2,X3,X4) p7: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p8: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = max{0, x4 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p5: U133#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p6: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p7: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p4: U133#(active(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p5: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p6: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p7: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p5: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p6: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U133#(mark(X1),X2,X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p5: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p6: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p5: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,X2,X3,active(X4)) -> U133#(X1,X2,X3,X4) p2: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p5: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x4 active_A(x1) = x1 + 1 mark_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p4: U133#(X1,X2,mark(X3),X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = max{0, x3 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,active(X2),X3,X4) -> U133#(X1,X2,X3,X4) p3: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x2 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) p2: U133#(X1,X2,active(X3),X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x3 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U133#(X1,mark(X2),X3,X4) -> U133#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U133#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(mark(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p5: U134#(active(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p6: U134#(X1,X2,X3,mark(X4)) -> U134#(X1,X2,X3,X4) p7: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p8: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = max{0, x4 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(mark(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p5: U134#(active(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p6: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p7: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(mark(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p4: U134#(active(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p5: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p6: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p7: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(mark(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p5: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p6: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(mark(X1),X2,X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p5: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p6: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p5: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,X2,X3,active(X4)) -> U134#(X1,X2,X3,X4) p2: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p5: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x4 active_A(x1) = x1 + 1 mark_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p4: U134#(X1,X2,mark(X3),X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = max{0, x3 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,active(X2),X3,X4) -> U134#(X1,X2,X3,X4) p3: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x2 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) p2: U134#(X1,X2,active(X3),X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x3 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U134#(X1,mark(X2),X3,X4) -> U134#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U134#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(mark(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p5: U135#(active(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p6: U135#(X1,X2,X3,mark(X4)) -> U135#(X1,X2,X3,X4) p7: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p8: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = max{0, x4 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(mark(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p5: U135#(active(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p6: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p7: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(mark(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p4: U135#(active(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p5: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p6: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p7: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(mark(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p5: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p6: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(mark(X1),X2,X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p5: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p6: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p5: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,X2,X3,active(X4)) -> U135#(X1,X2,X3,X4) p2: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p5: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x4 active_A(x1) = x1 + 1 mark_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p4: U135#(X1,X2,mark(X3),X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = max{0, x3 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,active(X2),X3,X4) -> U135#(X1,X2,X3,X4) p3: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x2 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) p2: U135#(X1,X2,active(X3),X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x3 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U135#(X1,mark(X2),X3,X4) -> U135#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U135#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p5: U136#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p6: U136#(X1,X2,X3,mark(X4)) -> U136#(X1,X2,X3,X4) p7: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p8: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = max{0, x4 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p5: U136#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p6: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p7: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p4: U136#(active(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p5: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p6: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p7: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p5: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p6: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U136#(mark(X1),X2,X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p5: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p6: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p5: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,X2,X3,active(X4)) -> U136#(X1,X2,X3,X4) p2: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p5: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x4 active_A(x1) = x1 + 1 mark_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p4: U136#(X1,X2,mark(X3),X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = max{0, x3 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,active(X2),X3,X4) -> U136#(X1,X2,X3,X4) p3: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x2 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) p2: U136#(X1,X2,active(X3),X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x3 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U136#(X1,mark(X2),X3,X4) -> U136#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U136#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: cons#(mark(X1),X2) -> cons#(X1,X2) p2: cons#(X1,active(X2)) -> cons#(X1,X2) p3: cons#(active(X1),X2) -> cons#(X1,X2) p4: cons#(X1,mark(X2)) -> cons#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: cons#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: cons#(mark(X1),X2) -> cons#(X1,X2) p2: cons#(X1,active(X2)) -> cons#(X1,X2) p3: cons#(active(X1),X2) -> cons#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: cons#(mark(X1),X2) -> cons#(X1,X2) p2: cons#(active(X1),X2) -> cons#(X1,X2) p3: cons#(X1,active(X2)) -> cons#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: cons#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: cons#(mark(X1),X2) -> cons#(X1,X2) p2: cons#(active(X1),X2) -> cons#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: cons#(mark(X1),X2) -> cons#(X1,X2) p2: cons#(active(X1),X2) -> cons#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: cons#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: cons#(mark(X1),X2) -> cons#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: cons#(mark(X1),X2) -> cons#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: cons#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: take#(mark(X1),X2) -> take#(X1,X2) p2: take#(X1,active(X2)) -> take#(X1,X2) p3: take#(active(X1),X2) -> take#(X1,X2) p4: take#(X1,mark(X2)) -> take#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: take#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: take#(mark(X1),X2) -> take#(X1,X2) p2: take#(X1,active(X2)) -> take#(X1,X2) p3: take#(active(X1),X2) -> take#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: take#(mark(X1),X2) -> take#(X1,X2) p2: take#(active(X1),X2) -> take#(X1,X2) p3: take#(X1,active(X2)) -> take#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: take#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: take#(mark(X1),X2) -> take#(X1,X2) p2: take#(active(X1),X2) -> take#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: take#(mark(X1),X2) -> take#(X1,X2) p2: take#(active(X1),X2) -> take#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: take#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: take#(mark(X1),X2) -> take#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: take#(mark(X1),X2) -> take#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: take#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U22#(mark(X1),X2) -> U22#(X1,X2) p2: U22#(X1,active(X2)) -> U22#(X1,X2) p3: U22#(active(X1),X2) -> U22#(X1,X2) p4: U22#(X1,mark(X2)) -> U22#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U22#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U22#(mark(X1),X2) -> U22#(X1,X2) p2: U22#(X1,active(X2)) -> U22#(X1,X2) p3: U22#(active(X1),X2) -> U22#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U22#(mark(X1),X2) -> U22#(X1,X2) p2: U22#(active(X1),X2) -> U22#(X1,X2) p3: U22#(X1,active(X2)) -> U22#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U22#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U22#(mark(X1),X2) -> U22#(X1,X2) p2: U22#(active(X1),X2) -> U22#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U22#(mark(X1),X2) -> U22#(X1,X2) p2: U22#(active(X1),X2) -> U22#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U22#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U22#(mark(X1),X2) -> U22#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U22#(mark(X1),X2) -> U22#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U22#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U23#(mark(X)) -> U23#(X) p2: U23#(active(X)) -> U23#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U23#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U23#(mark(X)) -> U23#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U23#(mark(X)) -> U23#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U23#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U32#(mark(X1),X2) -> U32#(X1,X2) p2: U32#(X1,active(X2)) -> U32#(X1,X2) p3: U32#(active(X1),X2) -> U32#(X1,X2) p4: U32#(X1,mark(X2)) -> U32#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U32#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U32#(mark(X1),X2) -> U32#(X1,X2) p2: U32#(X1,active(X2)) -> U32#(X1,X2) p3: U32#(active(X1),X2) -> U32#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U32#(mark(X1),X2) -> U32#(X1,X2) p2: U32#(active(X1),X2) -> U32#(X1,X2) p3: U32#(X1,active(X2)) -> U32#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U32#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U32#(mark(X1),X2) -> U32#(X1,X2) p2: U32#(active(X1),X2) -> U32#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U32#(mark(X1),X2) -> U32#(X1,X2) p2: U32#(active(X1),X2) -> U32#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U32#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U32#(mark(X1),X2) -> U32#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U32#(mark(X1),X2) -> U32#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U32#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U33#(mark(X)) -> U33#(X) p2: U33#(active(X)) -> U33#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U33#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U33#(mark(X)) -> U33#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U33#(mark(X)) -> U33#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U33#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,X2,active(X3)) -> U42#(X1,X2,X3) p3: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) p4: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) p5: U42#(X1,X2,mark(X3)) -> U42#(X1,X2,X3) p6: U42#(X1,mark(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,X2,active(X3)) -> U42#(X1,X2,X3) p3: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) p4: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) p5: U42#(X1,mark(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,mark(X2),X3) -> U42#(X1,X2,X3) p3: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) p4: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) p5: U42#(X1,X2,active(X3)) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,mark(X2),X3) -> U42#(X1,X2,X3) p3: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) p4: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) p3: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) p4: U42#(X1,mark(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) p3: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(active(X1),X2,X3) -> U42#(X1,X2,X3) p3: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U42#(mark(X1),X2,X3) -> U42#(X1,X2,X3) p2: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U42#(X1,active(X2),X3) -> U42#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U42#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,X2,active(X3)) -> U43#(X1,X2,X3) p3: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) p4: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) p5: U43#(X1,X2,mark(X3)) -> U43#(X1,X2,X3) p6: U43#(X1,mark(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,X2,active(X3)) -> U43#(X1,X2,X3) p3: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) p4: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) p5: U43#(X1,mark(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,mark(X2),X3) -> U43#(X1,X2,X3) p3: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) p4: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) p5: U43#(X1,X2,active(X3)) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,mark(X2),X3) -> U43#(X1,X2,X3) p3: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) p4: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) p3: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) p4: U43#(X1,mark(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) p3: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(active(X1),X2,X3) -> U43#(X1,X2,X3) p3: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U43#(mark(X1),X2,X3) -> U43#(X1,X2,X3) p2: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U43#(X1,active(X2),X3) -> U43#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U43#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,X2,active(X3)) -> U44#(X1,X2,X3) p3: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) p4: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) p5: U44#(X1,X2,mark(X3)) -> U44#(X1,X2,X3) p6: U44#(X1,mark(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,X2,active(X3)) -> U44#(X1,X2,X3) p3: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) p4: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) p5: U44#(X1,mark(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,mark(X2),X3) -> U44#(X1,X2,X3) p3: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) p4: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) p5: U44#(X1,X2,active(X3)) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,mark(X2),X3) -> U44#(X1,X2,X3) p3: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) p4: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) p3: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) p4: U44#(X1,mark(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) p3: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(active(X1),X2,X3) -> U44#(X1,X2,X3) p3: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U44#(mark(X1),X2,X3) -> U44#(X1,X2,X3) p2: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U44#(X1,active(X2),X3) -> U44#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U44#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U45#(mark(X1),X2) -> U45#(X1,X2) p2: U45#(X1,active(X2)) -> U45#(X1,X2) p3: U45#(active(X1),X2) -> U45#(X1,X2) p4: U45#(X1,mark(X2)) -> U45#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U45#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U45#(mark(X1),X2) -> U45#(X1,X2) p2: U45#(X1,active(X2)) -> U45#(X1,X2) p3: U45#(active(X1),X2) -> U45#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U45#(mark(X1),X2) -> U45#(X1,X2) p2: U45#(active(X1),X2) -> U45#(X1,X2) p3: U45#(X1,active(X2)) -> U45#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U45#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U45#(mark(X1),X2) -> U45#(X1,X2) p2: U45#(active(X1),X2) -> U45#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U45#(mark(X1),X2) -> U45#(X1,X2) p2: U45#(active(X1),X2) -> U45#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U45#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U45#(mark(X1),X2) -> U45#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U45#(mark(X1),X2) -> U45#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U45#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U46#(mark(X)) -> U46#(X) p2: U46#(active(X)) -> U46#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U46#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U46#(mark(X)) -> U46#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U46#(mark(X)) -> U46#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U46#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U52#(mark(X)) -> U52#(X) p2: U52#(active(X)) -> U52#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U52#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U52#(mark(X)) -> U52#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U52#(mark(X)) -> U52#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U52#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U62#(mark(X)) -> U62#(X) p2: U62#(active(X)) -> U62#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U62#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U62#(mark(X)) -> U62#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U62#(mark(X)) -> U62#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U62#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,X2,active(X3)) -> U92#(X1,X2,X3) p3: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) p4: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) p5: U92#(X1,X2,mark(X3)) -> U92#(X1,X2,X3) p6: U92#(X1,mark(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,X2,active(X3)) -> U92#(X1,X2,X3) p3: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) p4: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) p5: U92#(X1,mark(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,mark(X2),X3) -> U92#(X1,X2,X3) p3: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) p4: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) p5: U92#(X1,X2,active(X3)) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,mark(X2),X3) -> U92#(X1,X2,X3) p3: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) p4: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) p3: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) p4: U92#(X1,mark(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) p3: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(active(X1),X2,X3) -> U92#(X1,X2,X3) p3: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U92#(mark(X1),X2,X3) -> U92#(X1,X2,X3) p2: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U92#(X1,active(X2),X3) -> U92#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U92#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,X2,active(X3)) -> U93#(X1,X2,X3) p3: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) p4: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) p5: U93#(X1,X2,mark(X3)) -> U93#(X1,X2,X3) p6: U93#(X1,mark(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,X2,active(X3)) -> U93#(X1,X2,X3) p3: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) p4: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) p5: U93#(X1,mark(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,mark(X2),X3) -> U93#(X1,X2,X3) p3: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) p4: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) p5: U93#(X1,X2,active(X3)) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,mark(X2),X3) -> U93#(X1,X2,X3) p3: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) p4: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) p3: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) p4: U93#(X1,mark(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) p3: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(active(X1),X2,X3) -> U93#(X1,X2,X3) p3: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U93#(mark(X1),X2,X3) -> U93#(X1,X2,X3) p2: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U93#(X1,active(X2),X3) -> U93#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U93#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,X2,active(X3)) -> U94#(X1,X2,X3) p3: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) p4: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) p5: U94#(X1,X2,mark(X3)) -> U94#(X1,X2,X3) p6: U94#(X1,mark(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,X2,active(X3)) -> U94#(X1,X2,X3) p3: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) p4: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) p5: U94#(X1,mark(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,mark(X2),X3) -> U94#(X1,X2,X3) p3: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) p4: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) p5: U94#(X1,X2,active(X3)) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,mark(X2),X3) -> U94#(X1,X2,X3) p3: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) p4: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) p3: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) p4: U94#(X1,mark(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) p3: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(active(X1),X2,X3) -> U94#(X1,X2,X3) p3: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U94#(mark(X1),X2,X3) -> U94#(X1,X2,X3) p2: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U94#(X1,active(X2),X3) -> U94#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U94#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U95#(mark(X1),X2) -> U95#(X1,X2) p2: U95#(X1,active(X2)) -> U95#(X1,X2) p3: U95#(active(X1),X2) -> U95#(X1,X2) p4: U95#(X1,mark(X2)) -> U95#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U95#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U95#(mark(X1),X2) -> U95#(X1,X2) p2: U95#(X1,active(X2)) -> U95#(X1,X2) p3: U95#(active(X1),X2) -> U95#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U95#(mark(X1),X2) -> U95#(X1,X2) p2: U95#(active(X1),X2) -> U95#(X1,X2) p3: U95#(X1,active(X2)) -> U95#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U95#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U95#(mark(X1),X2) -> U95#(X1,X2) p2: U95#(active(X1),X2) -> U95#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U95#(mark(X1),X2) -> U95#(X1,X2) p2: U95#(active(X1),X2) -> U95#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U95#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U95#(mark(X1),X2) -> U95#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U95#(mark(X1),X2) -> U95#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U95#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U96#(mark(X)) -> U96#(X) p2: U96#(active(X)) -> U96#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U96#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U96#(mark(X)) -> U96#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U96#(mark(X)) -> U96#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U96#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U11#(mark(X1),X2) -> U11#(X1,X2) p2: U11#(X1,active(X2)) -> U11#(X1,X2) p3: U11#(active(X1),X2) -> U11#(X1,X2) p4: U11#(X1,mark(X2)) -> U11#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U11#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U11#(mark(X1),X2) -> U11#(X1,X2) p2: U11#(X1,active(X2)) -> U11#(X1,X2) p3: U11#(active(X1),X2) -> U11#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U11#(mark(X1),X2) -> U11#(X1,X2) p2: U11#(active(X1),X2) -> U11#(X1,X2) p3: U11#(X1,active(X2)) -> U11#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U11#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U11#(mark(X1),X2) -> U11#(X1,X2) p2: U11#(active(X1),X2) -> U11#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U11#(mark(X1),X2) -> U11#(X1,X2) p2: U11#(active(X1),X2) -> U11#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U11#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U11#(mark(X1),X2) -> U11#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U11#(mark(X1),X2) -> U11#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U11#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U21#(mark(X1),X2) -> U21#(X1,X2) p2: U21#(X1,active(X2)) -> U21#(X1,X2) p3: U21#(active(X1),X2) -> U21#(X1,X2) p4: U21#(X1,mark(X2)) -> U21#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U21#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U21#(mark(X1),X2) -> U21#(X1,X2) p2: U21#(X1,active(X2)) -> U21#(X1,X2) p3: U21#(active(X1),X2) -> U21#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U21#(mark(X1),X2) -> U21#(X1,X2) p2: U21#(active(X1),X2) -> U21#(X1,X2) p3: U21#(X1,active(X2)) -> U21#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U21#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U21#(mark(X1),X2) -> U21#(X1,X2) p2: U21#(active(X1),X2) -> U21#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U21#(mark(X1),X2) -> U21#(X1,X2) p2: U21#(active(X1),X2) -> U21#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U21#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U21#(mark(X1),X2) -> U21#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U21#(mark(X1),X2) -> U21#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U21#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U31#(mark(X1),X2) -> U31#(X1,X2) p2: U31#(X1,active(X2)) -> U31#(X1,X2) p3: U31#(active(X1),X2) -> U31#(X1,X2) p4: U31#(X1,mark(X2)) -> U31#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U31#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U31#(mark(X1),X2) -> U31#(X1,X2) p2: U31#(X1,active(X2)) -> U31#(X1,X2) p3: U31#(active(X1),X2) -> U31#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U31#(mark(X1),X2) -> U31#(X1,X2) p2: U31#(active(X1),X2) -> U31#(X1,X2) p3: U31#(X1,active(X2)) -> U31#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U31#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U31#(mark(X1),X2) -> U31#(X1,X2) p2: U31#(active(X1),X2) -> U31#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U31#(mark(X1),X2) -> U31#(X1,X2) p2: U31#(active(X1),X2) -> U31#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U31#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U31#(mark(X1),X2) -> U31#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U31#(mark(X1),X2) -> U31#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U31#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,X2,active(X3)) -> U41#(X1,X2,X3) p3: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) p4: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) p5: U41#(X1,X2,mark(X3)) -> U41#(X1,X2,X3) p6: U41#(X1,mark(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,X2,active(X3)) -> U41#(X1,X2,X3) p3: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) p4: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) p5: U41#(X1,mark(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,mark(X2),X3) -> U41#(X1,X2,X3) p3: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) p4: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) p5: U41#(X1,X2,active(X3)) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,mark(X2),X3) -> U41#(X1,X2,X3) p3: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) p4: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) p3: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) p4: U41#(X1,mark(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) p3: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(active(X1),X2,X3) -> U41#(X1,X2,X3) p3: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U41#(mark(X1),X2,X3) -> U41#(X1,X2,X3) p2: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U41#(X1,active(X2),X3) -> U41#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U41#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U51#(mark(X1),X2) -> U51#(X1,X2) p2: U51#(X1,active(X2)) -> U51#(X1,X2) p3: U51#(active(X1),X2) -> U51#(X1,X2) p4: U51#(X1,mark(X2)) -> U51#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U51#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U51#(mark(X1),X2) -> U51#(X1,X2) p2: U51#(X1,active(X2)) -> U51#(X1,X2) p3: U51#(active(X1),X2) -> U51#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U51#(mark(X1),X2) -> U51#(X1,X2) p2: U51#(active(X1),X2) -> U51#(X1,X2) p3: U51#(X1,active(X2)) -> U51#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U51#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U51#(mark(X1),X2) -> U51#(X1,X2) p2: U51#(active(X1),X2) -> U51#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U51#(mark(X1),X2) -> U51#(X1,X2) p2: U51#(active(X1),X2) -> U51#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U51#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U51#(mark(X1),X2) -> U51#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U51#(mark(X1),X2) -> U51#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U51#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U61#(mark(X1),X2) -> U61#(X1,X2) p2: U61#(X1,active(X2)) -> U61#(X1,X2) p3: U61#(active(X1),X2) -> U61#(X1,X2) p4: U61#(X1,mark(X2)) -> U61#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U61#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U61#(mark(X1),X2) -> U61#(X1,X2) p2: U61#(X1,active(X2)) -> U61#(X1,X2) p3: U61#(active(X1),X2) -> U61#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U61#(mark(X1),X2) -> U61#(X1,X2) p2: U61#(active(X1),X2) -> U61#(X1,X2) p3: U61#(X1,active(X2)) -> U61#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U61#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U61#(mark(X1),X2) -> U61#(X1,X2) p2: U61#(active(X1),X2) -> U61#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U61#(mark(X1),X2) -> U61#(X1,X2) p2: U61#(active(X1),X2) -> U61#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U61#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U61#(mark(X1),X2) -> U61#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U61#(mark(X1),X2) -> U61#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U61#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U71#(mark(X)) -> U71#(X) p2: U71#(active(X)) -> U71#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U71#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U71#(mark(X)) -> U71#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U71#(mark(X)) -> U71#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U71#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U81#(mark(X)) -> U81#(X) p2: U81#(active(X)) -> U81#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U81#_A(x1) = max{0, x1 - 1} mark_A(x1) = x1 + 1 active_A(x1) = x1 + 2 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U81#(mark(X)) -> U81#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U81#(mark(X)) -> U81#(X) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the monotone reduction pair: max/plus interpretations on natural numbers: U81#_A(x1) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,X2,active(X3)) -> U91#(X1,X2,X3) p3: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) p4: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) p5: U91#(X1,X2,mark(X3)) -> U91#(X1,X2,X3) p6: U91#(X1,mark(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,X2,active(X3)) -> U91#(X1,X2,X3) p3: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) p4: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) p5: U91#(X1,mark(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,mark(X2),X3) -> U91#(X1,X2,X3) p3: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) p4: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) p5: U91#(X1,X2,active(X3)) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,mark(X2),X3) -> U91#(X1,X2,X3) p3: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) p4: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) p3: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) p4: U91#(X1,mark(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = max{2, x2 + 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) p3: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(active(X1),X2,X3) -> U91#(X1,X2,X3) p3: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U91#(mark(X1),X2,X3) -> U91#(X1,X2,X3) p2: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U91#(X1,active(X2),X3) -> U91#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U91#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,X2,active(X3)) -> U101#(X1,X2,X3) p3: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) p4: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) p5: U101#(X1,X2,mark(X3)) -> U101#(X1,X2,X3) p6: U101#(X1,mark(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,X2,active(X3)) -> U101#(X1,X2,X3) p3: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) p4: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) p5: U101#(X1,mark(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,mark(X2),X3) -> U101#(X1,X2,X3) p3: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) p4: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) p5: U101#(X1,X2,active(X3)) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,mark(X2),X3) -> U101#(X1,X2,X3) p3: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) p4: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) p3: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) p4: U101#(X1,mark(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) p3: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(active(X1),X2,X3) -> U101#(X1,X2,X3) p3: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U101#(mark(X1),X2,X3) -> U101#(X1,X2,X3) p2: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U101#(X1,active(X2),X3) -> U101#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U101#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,X2,active(X3)) -> U111#(X1,X2,X3) p3: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) p4: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) p5: U111#(X1,X2,mark(X3)) -> U111#(X1,X2,X3) p6: U111#(X1,mark(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x3 + 1 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,X2,active(X3)) -> U111#(X1,X2,X3) p3: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) p4: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) p5: U111#(X1,mark(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,mark(X2),X3) -> U111#(X1,X2,X3) p3: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) p4: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) p5: U111#(X1,X2,active(X3)) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x3 mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p5 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,mark(X2),X3) -> U111#(X1,X2,X3) p3: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) p4: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) p3: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) p4: U111#(X1,mark(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = max{0, x2 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) p3: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(active(X1),X2,X3) -> U111#(X1,X2,X3) p3: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U111#(mark(X1),X2,X3) -> U111#(X1,X2,X3) p2: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x1 mark_A(x1) = x1 + 1 active_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U111#(X1,active(X2),X3) -> U111#(X1,X2,X3) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U111#_A(x1,x2,x3) = x2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U121#(mark(X1),X2) -> U121#(X1,X2) p2: U121#(X1,active(X2)) -> U121#(X1,X2) p3: U121#(active(X1),X2) -> U121#(X1,X2) p4: U121#(X1,mark(X2)) -> U121#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U121#_A(x1,x2) = x2 mark_A(x1) = x1 + 1 active_A(x1) = x1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U121#(mark(X1),X2) -> U121#(X1,X2) p2: U121#(X1,active(X2)) -> U121#(X1,X2) p3: U121#(active(X1),X2) -> U121#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U121#(mark(X1),X2) -> U121#(X1,X2) p2: U121#(active(X1),X2) -> U121#(X1,X2) p3: U121#(X1,active(X2)) -> U121#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U121#_A(x1,x2) = x2 + 1 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p3 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U121#(mark(X1),X2) -> U121#(X1,X2) p2: U121#(active(X1),X2) -> U121#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U121#(mark(X1),X2) -> U121#(X1,X2) p2: U121#(active(X1),X2) -> U121#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U121#_A(x1,x2) = x1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U121#(mark(X1),X2) -> U121#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U121#(mark(X1),X2) -> U121#(X1,X2) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U121#_A(x1,x2) = x1 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(mark(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p5: U131#(active(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p6: U131#(X1,X2,X3,mark(X4)) -> U131#(X1,X2,X3,X4) p7: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p8: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = max{0, x4 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p6 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(mark(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p5: U131#(active(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p6: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p7: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(mark(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p4: U131#(active(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p5: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p6: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p7: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x1 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(mark(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p5: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p6: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(mark(X1),X2,X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p5: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p6: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x1 + 3 mark_A(x1) = x1 + 1 active_A(x1) = max{2, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p5: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,X2,X3,active(X4)) -> U131#(X1,X2,X3,X4) p2: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p5: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x4 active_A(x1) = x1 + 1 mark_A(x1) = max{0, x1 - 1} The next rules are strictly ordered: p1 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(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: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p4: U131#(X1,X2,mark(X3),X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = max{0, x3 - 1} mark_A(x1) = x1 + 2 active_A(x1) = x1 + 1 The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2, p3} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,active(X2),X3,X4) -> U131#(X1,X2,X3,X4) p3: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x2 + 1 mark_A(x1) = x1 active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1, p2} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) p2: U131#(X1,X2,active(X3),X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x3 mark_A(x1) = max{0, x1 - 1} active_A(x1) = x1 + 1 The next rules are strictly ordered: p2 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: U131#(X1,mark(X2),X3,X4) -> U131#(X1,X2,X3,X4) and R consists of: r1: active(zeros()) -> mark(cons(|0|(),zeros())) r2: active(U101(tt(),V1,V2)) -> mark(U102(isNatKind(V1),V1,V2)) r3: active(U102(tt(),V1,V2)) -> mark(U103(isNatIListKind(V2),V1,V2)) r4: active(U103(tt(),V1,V2)) -> mark(U104(isNatIListKind(V2),V1,V2)) r5: active(U104(tt(),V1,V2)) -> mark(U105(isNat(V1),V2)) r6: active(U105(tt(),V2)) -> mark(U106(isNatIList(V2))) r7: active(U106(tt())) -> mark(tt()) r8: active(U11(tt(),V1)) -> mark(U12(isNatIListKind(V1),V1)) r9: active(U111(tt(),L,N)) -> mark(U112(isNatIListKind(L),L,N)) r10: active(U112(tt(),L,N)) -> mark(U113(isNat(N),L,N)) r11: active(U113(tt(),L,N)) -> mark(U114(isNatKind(N),L)) r12: active(U114(tt(),L)) -> mark(s(length(L))) r13: active(U12(tt(),V1)) -> mark(U13(isNatList(V1))) r14: active(U121(tt(),IL)) -> mark(U122(isNatIListKind(IL))) r15: active(U122(tt())) -> mark(nil()) r16: active(U13(tt())) -> mark(tt()) r17: active(U131(tt(),IL,M,N)) -> mark(U132(isNatIListKind(IL),IL,M,N)) r18: active(U132(tt(),IL,M,N)) -> mark(U133(isNat(M),IL,M,N)) r19: active(U133(tt(),IL,M,N)) -> mark(U134(isNatKind(M),IL,M,N)) r20: active(U134(tt(),IL,M,N)) -> mark(U135(isNat(N),IL,M,N)) r21: active(U135(tt(),IL,M,N)) -> mark(U136(isNatKind(N),IL,M,N)) r22: active(U136(tt(),IL,M,N)) -> mark(cons(N,take(M,IL))) r23: active(U21(tt(),V1)) -> mark(U22(isNatKind(V1),V1)) r24: active(U22(tt(),V1)) -> mark(U23(isNat(V1))) r25: active(U23(tt())) -> mark(tt()) r26: active(U31(tt(),V)) -> mark(U32(isNatIListKind(V),V)) r27: active(U32(tt(),V)) -> mark(U33(isNatList(V))) r28: active(U33(tt())) -> mark(tt()) r29: active(U41(tt(),V1,V2)) -> mark(U42(isNatKind(V1),V1,V2)) r30: active(U42(tt(),V1,V2)) -> mark(U43(isNatIListKind(V2),V1,V2)) r31: active(U43(tt(),V1,V2)) -> mark(U44(isNatIListKind(V2),V1,V2)) r32: active(U44(tt(),V1,V2)) -> mark(U45(isNat(V1),V2)) r33: active(U45(tt(),V2)) -> mark(U46(isNatIList(V2))) r34: active(U46(tt())) -> mark(tt()) r35: active(U51(tt(),V2)) -> mark(U52(isNatIListKind(V2))) r36: active(U52(tt())) -> mark(tt()) r37: active(U61(tt(),V2)) -> mark(U62(isNatIListKind(V2))) r38: active(U62(tt())) -> mark(tt()) r39: active(U71(tt())) -> mark(tt()) r40: active(U81(tt())) -> mark(tt()) r41: active(U91(tt(),V1,V2)) -> mark(U92(isNatKind(V1),V1,V2)) r42: active(U92(tt(),V1,V2)) -> mark(U93(isNatIListKind(V2),V1,V2)) r43: active(U93(tt(),V1,V2)) -> mark(U94(isNatIListKind(V2),V1,V2)) r44: active(U94(tt(),V1,V2)) -> mark(U95(isNat(V1),V2)) r45: active(U95(tt(),V2)) -> mark(U96(isNatList(V2))) r46: active(U96(tt())) -> mark(tt()) r47: active(isNat(|0|())) -> mark(tt()) r48: active(isNat(length(V1))) -> mark(U11(isNatIListKind(V1),V1)) r49: active(isNat(s(V1))) -> mark(U21(isNatKind(V1),V1)) r50: active(isNatIList(V)) -> mark(U31(isNatIListKind(V),V)) r51: active(isNatIList(zeros())) -> mark(tt()) r52: active(isNatIList(cons(V1,V2))) -> mark(U41(isNatKind(V1),V1,V2)) r53: active(isNatIListKind(nil())) -> mark(tt()) r54: active(isNatIListKind(zeros())) -> mark(tt()) r55: active(isNatIListKind(cons(V1,V2))) -> mark(U51(isNatKind(V1),V2)) r56: active(isNatIListKind(take(V1,V2))) -> mark(U61(isNatKind(V1),V2)) r57: active(isNatKind(|0|())) -> mark(tt()) r58: active(isNatKind(length(V1))) -> mark(U71(isNatIListKind(V1))) r59: active(isNatKind(s(V1))) -> mark(U81(isNatKind(V1))) r60: active(isNatList(nil())) -> mark(tt()) r61: active(isNatList(cons(V1,V2))) -> mark(U91(isNatKind(V1),V1,V2)) r62: active(isNatList(take(V1,V2))) -> mark(U101(isNatKind(V1),V1,V2)) r63: active(length(nil())) -> mark(|0|()) r64: active(length(cons(N,L))) -> mark(U111(isNatList(L),L,N)) r65: active(take(|0|(),IL)) -> mark(U121(isNatIList(IL),IL)) r66: active(take(s(M),cons(N,IL))) -> mark(U131(isNatIList(IL),IL,M,N)) r67: mark(zeros()) -> active(zeros()) r68: mark(cons(X1,X2)) -> active(cons(mark(X1),X2)) r69: mark(|0|()) -> active(|0|()) r70: mark(U101(X1,X2,X3)) -> active(U101(mark(X1),X2,X3)) r71: mark(tt()) -> active(tt()) r72: mark(U102(X1,X2,X3)) -> active(U102(mark(X1),X2,X3)) r73: mark(isNatKind(X)) -> active(isNatKind(X)) r74: mark(U103(X1,X2,X3)) -> active(U103(mark(X1),X2,X3)) r75: mark(isNatIListKind(X)) -> active(isNatIListKind(X)) r76: mark(U104(X1,X2,X3)) -> active(U104(mark(X1),X2,X3)) r77: mark(U105(X1,X2)) -> active(U105(mark(X1),X2)) r78: mark(isNat(X)) -> active(isNat(X)) r79: mark(U106(X)) -> active(U106(mark(X))) r80: mark(isNatIList(X)) -> active(isNatIList(X)) r81: mark(U11(X1,X2)) -> active(U11(mark(X1),X2)) r82: mark(U12(X1,X2)) -> active(U12(mark(X1),X2)) r83: mark(U111(X1,X2,X3)) -> active(U111(mark(X1),X2,X3)) r84: mark(U112(X1,X2,X3)) -> active(U112(mark(X1),X2,X3)) r85: mark(U113(X1,X2,X3)) -> active(U113(mark(X1),X2,X3)) r86: mark(U114(X1,X2)) -> active(U114(mark(X1),X2)) r87: mark(s(X)) -> active(s(mark(X))) r88: mark(length(X)) -> active(length(mark(X))) r89: mark(U13(X)) -> active(U13(mark(X))) r90: mark(isNatList(X)) -> active(isNatList(X)) r91: mark(U121(X1,X2)) -> active(U121(mark(X1),X2)) r92: mark(U122(X)) -> active(U122(mark(X))) r93: mark(nil()) -> active(nil()) r94: mark(U131(X1,X2,X3,X4)) -> active(U131(mark(X1),X2,X3,X4)) r95: mark(U132(X1,X2,X3,X4)) -> active(U132(mark(X1),X2,X3,X4)) r96: mark(U133(X1,X2,X3,X4)) -> active(U133(mark(X1),X2,X3,X4)) r97: mark(U134(X1,X2,X3,X4)) -> active(U134(mark(X1),X2,X3,X4)) r98: mark(U135(X1,X2,X3,X4)) -> active(U135(mark(X1),X2,X3,X4)) r99: mark(U136(X1,X2,X3,X4)) -> active(U136(mark(X1),X2,X3,X4)) r100: mark(take(X1,X2)) -> active(take(mark(X1),mark(X2))) r101: mark(U21(X1,X2)) -> active(U21(mark(X1),X2)) r102: mark(U22(X1,X2)) -> active(U22(mark(X1),X2)) r103: mark(U23(X)) -> active(U23(mark(X))) r104: mark(U31(X1,X2)) -> active(U31(mark(X1),X2)) r105: mark(U32(X1,X2)) -> active(U32(mark(X1),X2)) r106: mark(U33(X)) -> active(U33(mark(X))) r107: mark(U41(X1,X2,X3)) -> active(U41(mark(X1),X2,X3)) r108: mark(U42(X1,X2,X3)) -> active(U42(mark(X1),X2,X3)) r109: mark(U43(X1,X2,X3)) -> active(U43(mark(X1),X2,X3)) r110: mark(U44(X1,X2,X3)) -> active(U44(mark(X1),X2,X3)) r111: mark(U45(X1,X2)) -> active(U45(mark(X1),X2)) r112: mark(U46(X)) -> active(U46(mark(X))) r113: mark(U51(X1,X2)) -> active(U51(mark(X1),X2)) r114: mark(U52(X)) -> active(U52(mark(X))) r115: mark(U61(X1,X2)) -> active(U61(mark(X1),X2)) r116: mark(U62(X)) -> active(U62(mark(X))) r117: mark(U71(X)) -> active(U71(mark(X))) r118: mark(U81(X)) -> active(U81(mark(X))) r119: mark(U91(X1,X2,X3)) -> active(U91(mark(X1),X2,X3)) r120: mark(U92(X1,X2,X3)) -> active(U92(mark(X1),X2,X3)) r121: mark(U93(X1,X2,X3)) -> active(U93(mark(X1),X2,X3)) r122: mark(U94(X1,X2,X3)) -> active(U94(mark(X1),X2,X3)) r123: mark(U95(X1,X2)) -> active(U95(mark(X1),X2)) r124: mark(U96(X)) -> active(U96(mark(X))) r125: cons(mark(X1),X2) -> cons(X1,X2) r126: cons(X1,mark(X2)) -> cons(X1,X2) r127: cons(active(X1),X2) -> cons(X1,X2) r128: cons(X1,active(X2)) -> cons(X1,X2) r129: U101(mark(X1),X2,X3) -> U101(X1,X2,X3) r130: U101(X1,mark(X2),X3) -> U101(X1,X2,X3) r131: U101(X1,X2,mark(X3)) -> U101(X1,X2,X3) r132: U101(active(X1),X2,X3) -> U101(X1,X2,X3) r133: U101(X1,active(X2),X3) -> U101(X1,X2,X3) r134: U101(X1,X2,active(X3)) -> U101(X1,X2,X3) r135: U102(mark(X1),X2,X3) -> U102(X1,X2,X3) r136: U102(X1,mark(X2),X3) -> U102(X1,X2,X3) r137: U102(X1,X2,mark(X3)) -> U102(X1,X2,X3) r138: U102(active(X1),X2,X3) -> U102(X1,X2,X3) r139: U102(X1,active(X2),X3) -> U102(X1,X2,X3) r140: U102(X1,X2,active(X3)) -> U102(X1,X2,X3) r141: isNatKind(mark(X)) -> isNatKind(X) r142: isNatKind(active(X)) -> isNatKind(X) r143: U103(mark(X1),X2,X3) -> U103(X1,X2,X3) r144: U103(X1,mark(X2),X3) -> U103(X1,X2,X3) r145: U103(X1,X2,mark(X3)) -> U103(X1,X2,X3) r146: U103(active(X1),X2,X3) -> U103(X1,X2,X3) r147: U103(X1,active(X2),X3) -> U103(X1,X2,X3) r148: U103(X1,X2,active(X3)) -> U103(X1,X2,X3) r149: isNatIListKind(mark(X)) -> isNatIListKind(X) r150: isNatIListKind(active(X)) -> isNatIListKind(X) r151: U104(mark(X1),X2,X3) -> U104(X1,X2,X3) r152: U104(X1,mark(X2),X3) -> U104(X1,X2,X3) r153: U104(X1,X2,mark(X3)) -> U104(X1,X2,X3) r154: U104(active(X1),X2,X3) -> U104(X1,X2,X3) r155: U104(X1,active(X2),X3) -> U104(X1,X2,X3) r156: U104(X1,X2,active(X3)) -> U104(X1,X2,X3) r157: U105(mark(X1),X2) -> U105(X1,X2) r158: U105(X1,mark(X2)) -> U105(X1,X2) r159: U105(active(X1),X2) -> U105(X1,X2) r160: U105(X1,active(X2)) -> U105(X1,X2) r161: isNat(mark(X)) -> isNat(X) r162: isNat(active(X)) -> isNat(X) r163: U106(mark(X)) -> U106(X) r164: U106(active(X)) -> U106(X) r165: isNatIList(mark(X)) -> isNatIList(X) r166: isNatIList(active(X)) -> isNatIList(X) r167: U11(mark(X1),X2) -> U11(X1,X2) r168: U11(X1,mark(X2)) -> U11(X1,X2) r169: U11(active(X1),X2) -> U11(X1,X2) r170: U11(X1,active(X2)) -> U11(X1,X2) r171: U12(mark(X1),X2) -> U12(X1,X2) r172: U12(X1,mark(X2)) -> U12(X1,X2) r173: U12(active(X1),X2) -> U12(X1,X2) r174: U12(X1,active(X2)) -> U12(X1,X2) r175: U111(mark(X1),X2,X3) -> U111(X1,X2,X3) r176: U111(X1,mark(X2),X3) -> U111(X1,X2,X3) r177: U111(X1,X2,mark(X3)) -> U111(X1,X2,X3) r178: U111(active(X1),X2,X3) -> U111(X1,X2,X3) r179: U111(X1,active(X2),X3) -> U111(X1,X2,X3) r180: U111(X1,X2,active(X3)) -> U111(X1,X2,X3) r181: U112(mark(X1),X2,X3) -> U112(X1,X2,X3) r182: U112(X1,mark(X2),X3) -> U112(X1,X2,X3) r183: U112(X1,X2,mark(X3)) -> U112(X1,X2,X3) r184: U112(active(X1),X2,X3) -> U112(X1,X2,X3) r185: U112(X1,active(X2),X3) -> U112(X1,X2,X3) r186: U112(X1,X2,active(X3)) -> U112(X1,X2,X3) r187: U113(mark(X1),X2,X3) -> U113(X1,X2,X3) r188: U113(X1,mark(X2),X3) -> U113(X1,X2,X3) r189: U113(X1,X2,mark(X3)) -> U113(X1,X2,X3) r190: U113(active(X1),X2,X3) -> U113(X1,X2,X3) r191: U113(X1,active(X2),X3) -> U113(X1,X2,X3) r192: U113(X1,X2,active(X3)) -> U113(X1,X2,X3) r193: U114(mark(X1),X2) -> U114(X1,X2) r194: U114(X1,mark(X2)) -> U114(X1,X2) r195: U114(active(X1),X2) -> U114(X1,X2) r196: U114(X1,active(X2)) -> U114(X1,X2) r197: s(mark(X)) -> s(X) r198: s(active(X)) -> s(X) r199: length(mark(X)) -> length(X) r200: length(active(X)) -> length(X) r201: U13(mark(X)) -> U13(X) r202: U13(active(X)) -> U13(X) r203: isNatList(mark(X)) -> isNatList(X) r204: isNatList(active(X)) -> isNatList(X) r205: U121(mark(X1),X2) -> U121(X1,X2) r206: U121(X1,mark(X2)) -> U121(X1,X2) r207: U121(active(X1),X2) -> U121(X1,X2) r208: U121(X1,active(X2)) -> U121(X1,X2) r209: U122(mark(X)) -> U122(X) r210: U122(active(X)) -> U122(X) r211: U131(mark(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r212: U131(X1,mark(X2),X3,X4) -> U131(X1,X2,X3,X4) r213: U131(X1,X2,mark(X3),X4) -> U131(X1,X2,X3,X4) r214: U131(X1,X2,X3,mark(X4)) -> U131(X1,X2,X3,X4) r215: U131(active(X1),X2,X3,X4) -> U131(X1,X2,X3,X4) r216: U131(X1,active(X2),X3,X4) -> U131(X1,X2,X3,X4) r217: U131(X1,X2,active(X3),X4) -> U131(X1,X2,X3,X4) r218: U131(X1,X2,X3,active(X4)) -> U131(X1,X2,X3,X4) r219: U132(mark(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r220: U132(X1,mark(X2),X3,X4) -> U132(X1,X2,X3,X4) r221: U132(X1,X2,mark(X3),X4) -> U132(X1,X2,X3,X4) r222: U132(X1,X2,X3,mark(X4)) -> U132(X1,X2,X3,X4) r223: U132(active(X1),X2,X3,X4) -> U132(X1,X2,X3,X4) r224: U132(X1,active(X2),X3,X4) -> U132(X1,X2,X3,X4) r225: U132(X1,X2,active(X3),X4) -> U132(X1,X2,X3,X4) r226: U132(X1,X2,X3,active(X4)) -> U132(X1,X2,X3,X4) r227: U133(mark(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r228: U133(X1,mark(X2),X3,X4) -> U133(X1,X2,X3,X4) r229: U133(X1,X2,mark(X3),X4) -> U133(X1,X2,X3,X4) r230: U133(X1,X2,X3,mark(X4)) -> U133(X1,X2,X3,X4) r231: U133(active(X1),X2,X3,X4) -> U133(X1,X2,X3,X4) r232: U133(X1,active(X2),X3,X4) -> U133(X1,X2,X3,X4) r233: U133(X1,X2,active(X3),X4) -> U133(X1,X2,X3,X4) r234: U133(X1,X2,X3,active(X4)) -> U133(X1,X2,X3,X4) r235: U134(mark(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r236: U134(X1,mark(X2),X3,X4) -> U134(X1,X2,X3,X4) r237: U134(X1,X2,mark(X3),X4) -> U134(X1,X2,X3,X4) r238: U134(X1,X2,X3,mark(X4)) -> U134(X1,X2,X3,X4) r239: U134(active(X1),X2,X3,X4) -> U134(X1,X2,X3,X4) r240: U134(X1,active(X2),X3,X4) -> U134(X1,X2,X3,X4) r241: U134(X1,X2,active(X3),X4) -> U134(X1,X2,X3,X4) r242: U134(X1,X2,X3,active(X4)) -> U134(X1,X2,X3,X4) r243: U135(mark(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r244: U135(X1,mark(X2),X3,X4) -> U135(X1,X2,X3,X4) r245: U135(X1,X2,mark(X3),X4) -> U135(X1,X2,X3,X4) r246: U135(X1,X2,X3,mark(X4)) -> U135(X1,X2,X3,X4) r247: U135(active(X1),X2,X3,X4) -> U135(X1,X2,X3,X4) r248: U135(X1,active(X2),X3,X4) -> U135(X1,X2,X3,X4) r249: U135(X1,X2,active(X3),X4) -> U135(X1,X2,X3,X4) r250: U135(X1,X2,X3,active(X4)) -> U135(X1,X2,X3,X4) r251: U136(mark(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r252: U136(X1,mark(X2),X3,X4) -> U136(X1,X2,X3,X4) r253: U136(X1,X2,mark(X3),X4) -> U136(X1,X2,X3,X4) r254: U136(X1,X2,X3,mark(X4)) -> U136(X1,X2,X3,X4) r255: U136(active(X1),X2,X3,X4) -> U136(X1,X2,X3,X4) r256: U136(X1,active(X2),X3,X4) -> U136(X1,X2,X3,X4) r257: U136(X1,X2,active(X3),X4) -> U136(X1,X2,X3,X4) r258: U136(X1,X2,X3,active(X4)) -> U136(X1,X2,X3,X4) r259: take(mark(X1),X2) -> take(X1,X2) r260: take(X1,mark(X2)) -> take(X1,X2) r261: take(active(X1),X2) -> take(X1,X2) r262: take(X1,active(X2)) -> take(X1,X2) r263: U21(mark(X1),X2) -> U21(X1,X2) r264: U21(X1,mark(X2)) -> U21(X1,X2) r265: U21(active(X1),X2) -> U21(X1,X2) r266: U21(X1,active(X2)) -> U21(X1,X2) r267: U22(mark(X1),X2) -> U22(X1,X2) r268: U22(X1,mark(X2)) -> U22(X1,X2) r269: U22(active(X1),X2) -> U22(X1,X2) r270: U22(X1,active(X2)) -> U22(X1,X2) r271: U23(mark(X)) -> U23(X) r272: U23(active(X)) -> U23(X) r273: U31(mark(X1),X2) -> U31(X1,X2) r274: U31(X1,mark(X2)) -> U31(X1,X2) r275: U31(active(X1),X2) -> U31(X1,X2) r276: U31(X1,active(X2)) -> U31(X1,X2) r277: U32(mark(X1),X2) -> U32(X1,X2) r278: U32(X1,mark(X2)) -> U32(X1,X2) r279: U32(active(X1),X2) -> U32(X1,X2) r280: U32(X1,active(X2)) -> U32(X1,X2) r281: U33(mark(X)) -> U33(X) r282: U33(active(X)) -> U33(X) r283: U41(mark(X1),X2,X3) -> U41(X1,X2,X3) r284: U41(X1,mark(X2),X3) -> U41(X1,X2,X3) r285: U41(X1,X2,mark(X3)) -> U41(X1,X2,X3) r286: U41(active(X1),X2,X3) -> U41(X1,X2,X3) r287: U41(X1,active(X2),X3) -> U41(X1,X2,X3) r288: U41(X1,X2,active(X3)) -> U41(X1,X2,X3) r289: U42(mark(X1),X2,X3) -> U42(X1,X2,X3) r290: U42(X1,mark(X2),X3) -> U42(X1,X2,X3) r291: U42(X1,X2,mark(X3)) -> U42(X1,X2,X3) r292: U42(active(X1),X2,X3) -> U42(X1,X2,X3) r293: U42(X1,active(X2),X3) -> U42(X1,X2,X3) r294: U42(X1,X2,active(X3)) -> U42(X1,X2,X3) r295: U43(mark(X1),X2,X3) -> U43(X1,X2,X3) r296: U43(X1,mark(X2),X3) -> U43(X1,X2,X3) r297: U43(X1,X2,mark(X3)) -> U43(X1,X2,X3) r298: U43(active(X1),X2,X3) -> U43(X1,X2,X3) r299: U43(X1,active(X2),X3) -> U43(X1,X2,X3) r300: U43(X1,X2,active(X3)) -> U43(X1,X2,X3) r301: U44(mark(X1),X2,X3) -> U44(X1,X2,X3) r302: U44(X1,mark(X2),X3) -> U44(X1,X2,X3) r303: U44(X1,X2,mark(X3)) -> U44(X1,X2,X3) r304: U44(active(X1),X2,X3) -> U44(X1,X2,X3) r305: U44(X1,active(X2),X3) -> U44(X1,X2,X3) r306: U44(X1,X2,active(X3)) -> U44(X1,X2,X3) r307: U45(mark(X1),X2) -> U45(X1,X2) r308: U45(X1,mark(X2)) -> U45(X1,X2) r309: U45(active(X1),X2) -> U45(X1,X2) r310: U45(X1,active(X2)) -> U45(X1,X2) r311: U46(mark(X)) -> U46(X) r312: U46(active(X)) -> U46(X) r313: U51(mark(X1),X2) -> U51(X1,X2) r314: U51(X1,mark(X2)) -> U51(X1,X2) r315: U51(active(X1),X2) -> U51(X1,X2) r316: U51(X1,active(X2)) -> U51(X1,X2) r317: U52(mark(X)) -> U52(X) r318: U52(active(X)) -> U52(X) r319: U61(mark(X1),X2) -> U61(X1,X2) r320: U61(X1,mark(X2)) -> U61(X1,X2) r321: U61(active(X1),X2) -> U61(X1,X2) r322: U61(X1,active(X2)) -> U61(X1,X2) r323: U62(mark(X)) -> U62(X) r324: U62(active(X)) -> U62(X) r325: U71(mark(X)) -> U71(X) r326: U71(active(X)) -> U71(X) r327: U81(mark(X)) -> U81(X) r328: U81(active(X)) -> U81(X) r329: U91(mark(X1),X2,X3) -> U91(X1,X2,X3) r330: U91(X1,mark(X2),X3) -> U91(X1,X2,X3) r331: U91(X1,X2,mark(X3)) -> U91(X1,X2,X3) r332: U91(active(X1),X2,X3) -> U91(X1,X2,X3) r333: U91(X1,active(X2),X3) -> U91(X1,X2,X3) r334: U91(X1,X2,active(X3)) -> U91(X1,X2,X3) r335: U92(mark(X1),X2,X3) -> U92(X1,X2,X3) r336: U92(X1,mark(X2),X3) -> U92(X1,X2,X3) r337: U92(X1,X2,mark(X3)) -> U92(X1,X2,X3) r338: U92(active(X1),X2,X3) -> U92(X1,X2,X3) r339: U92(X1,active(X2),X3) -> U92(X1,X2,X3) r340: U92(X1,X2,active(X3)) -> U92(X1,X2,X3) r341: U93(mark(X1),X2,X3) -> U93(X1,X2,X3) r342: U93(X1,mark(X2),X3) -> U93(X1,X2,X3) r343: U93(X1,X2,mark(X3)) -> U93(X1,X2,X3) r344: U93(active(X1),X2,X3) -> U93(X1,X2,X3) r345: U93(X1,active(X2),X3) -> U93(X1,X2,X3) r346: U93(X1,X2,active(X3)) -> U93(X1,X2,X3) r347: U94(mark(X1),X2,X3) -> U94(X1,X2,X3) r348: U94(X1,mark(X2),X3) -> U94(X1,X2,X3) r349: U94(X1,X2,mark(X3)) -> U94(X1,X2,X3) r350: U94(active(X1),X2,X3) -> U94(X1,X2,X3) r351: U94(X1,active(X2),X3) -> U94(X1,X2,X3) r352: U94(X1,X2,active(X3)) -> U94(X1,X2,X3) r353: U95(mark(X1),X2) -> U95(X1,X2) r354: U95(X1,mark(X2)) -> U95(X1,X2) r355: U95(active(X1),X2) -> U95(X1,X2) r356: U95(X1,active(X2)) -> U95(X1,X2) r357: U96(mark(X)) -> U96(X) r358: U96(active(X)) -> U96(X) The set of usable rules consists of (no rules) Take the reduction pair: max/plus interpretations on natural numbers: U131#_A(x1,x2,x3,x4) = x2 mark_A(x1) = x1 + 1 The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains.